Improvements to ASP.NET Web Forms
The Visual Studio team released Visual Studio 2013 Update 2 RTM. As part of this update we have added new features for ASP.NET Web Forms. This post will highlight some of the improvements done in ASP.NET Web Forms which are part of this release and some changes that we are working on.
ASP.NET Identity 2.0 Support
ASP.NET Identity is the new modern membership system for building ASP.NET applications. Identity makes it easier to add user profile, social logins such as Facebook, Twitter, Microsoft Account, Google and more, change persistence layer from SqlServer to Azure Table Storage and adds features such as Account Confirmation, Two-Factor Authentication, Account Lockout, Single Sign out from everywhere, Password Reset and many more security related features.
In Visual Studio 2013 Update2, the Web Forms templates have been updated to use Account Confirmation, Password Reset and other features from ASP.NET Identity 2.0
Entity DataSource control for Entity Framework 6
Entity Framework 6 is the latest version of EF. EF 6 introduced many new features such as Connection Resiliency which allows EF to automatically retry any commands that fail due to these connection breaks. To use EF 6 in your Web Forms application, we have created a new Entity DataSource control. The new control ships as a NuGet package (Microsoft.AspNet.EntityDataSource). For more details on this release see this post.
Dynamic Data provider for Entity Framework 6
Dynamic Data is a runtime scaffolding engine which allows you to create rich data driven applications where you can customize the UI and business logic of your application. To add support for Entity Framework 6, we have released a new Dynamic Data provider for EF 6, so that you can take benefit of the new EF 6 features. This provider ships as a NuGet package (Microsoft.AspNet.DynamicData.EFProvider). For more details on this release see this post.
Universal Providers for Entity Framework 6
Universal providers were used in the ASP.NET Web Forms templates that shipped in Visual Studio 2012. Universal providers were based on Entity Framework 5. We updated the providers to work with EF 6 so that you can take benefit of the new features in EF 6. You can update to the new providers from the NuGet gallery (Microsoft.AspNet.Providers.Core)
Schedule small background worker tasks in .NET 4.5.2
The .NET team released an update to .NET .NET 4.5.2. It is a highly compatible, in-place update to the .NET Framework 4, 4.5 and 4.5.1. One of the features to highlight in this release is addition of a new HostingEnvironment.QueueBackgroundWorkItem method that lets you schedule small background work items. ASP.NET tracks these items and prevents IIS from abruptly terminating the worker process until all background work items have completed. These will enable ASP.NET applications to reliably schedule Async work items.
For more details on this release and download instructions see this post.
Web Forms Scaffolding
In Visual Studio 2013, we released a new Scaffolding Framework to allow users to Scaffold a Model and add Create, replace, update and delete views. We are bringing in this support for Web Forms where you can Scaffold a model and it will generate Web Forms pages for creating, editing, updating and deleting the model.
For eg. When use Scaffolding to Scaffold a model which has a Product and a List of Categories, you will get an Insert page which will look like follows.
You can get the latest preview here We are working to add VB support in Scaffolders as well.
You can now get the first preview release of new CodeDOM providers that use Roslyn from NuGet in the Microsoft.CodeDom.Providers.DotNetCompilerPlatform package. Install the package into your application using NuGet in Visual Studio.
Enabling the new Roslyn compilers in your ASP.NET application will result in two main benefits:
- Support for new language features
- Potentially improved application startup/pre-compilation time
The first item is pretty self-explanatory. The second should be particularly helpful for customers with very large, complex ASP.NET applications. In our testing of a suitably large and complex application (>600 assemblies in bin, >500 user controls & pages), the runtime compilation cost at startup/pre-compilation dropped from ~15 minutes to ~70 seconds after enabling the new CodeDOM providers detailed below.
These are a drop-in replacement for the in-box providers and installing the package is all you should have to do to enable them (the package will modify your web.config file for you). The new providers work equally well at runtime and when using the ASP.NET Pre-compilation tool, aspnet_compiler.exe.
Full details are available at http://blogs.msdn.com/b/webdev/archive/2014/05/12/enabling-the-net-compiler-platform-roslyn-in-asp-net-applications.aspx
One ASP.NET Support
The Web Forms project templates integrate seamlessly with the new One ASP.NET experience. You can add MVC and Web API support to your Web Forms project, and you can configure authentication using the One ASP.NET project creation wizard. For more information, see Creating ASP.NET Web Projects in Visual Studio 2013.
The Web Forms templates use Bootstrap to provide a sleek and responsive look and feel that you can easily customize. For more information, see Bootstrap in the Visual Studio 2013 web project templates
Following is how the Web Forms templates look in the browser and on the phone.
If you have any questions/ suggestions please go to http://forums.asp.net/18.aspx/1?Web+Forms or http://aspnet.uservoice.com/forums/41202-asp-net-web-forms