Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Improvements for ASP.NET Web Forms

Improvements for ASP.NET Web Forms

Though ASP.NET Web Forms isn’t part of the vNext initiative it isn’t being ignored. As part of Visual Studio 2013 Update 2 it has picked up some new tooling, EF integration, and Roslyn support.

Why Web Forms is Not Part of ASP.NET vNext

To start with, let’s get the bad news out of the way. In order to improve performance and cross-platform portability, ASP.NET vNext is dropping its dependency on System.Web. Compared to OWIN it is slow, monolithic, and makes testing unnecessarily hard.

Though they have tried to isolate it several times, Web Forms is just too tightly intermingled with the rest of System.Web. And that’s just the beginning of the problem. System.Web has a circular dependency on System.Design, something that really shouldn’t have even been possible. To compound matters, System.Design also drags in System.Windows.Forms.

To in short, Web Forms is a mess of spaghetti code that can’t be unwound. But it is still being used so Microsoft is still supporting it for the time being.

Roslyn Support

Web Forms has always included run time compilation as part of its deployment strategy. This hasn’t changed, but you can switch to a Roslyn-backed CodeDOM provider as a drop-in replacement. (CodeDOM is the compiler framework that Web Forms currently uses.) Pranav Rastogi writes,

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.

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 this update the Web Forms templates have been modified to include features from ASP.NET Identity 2.0.

Entity Framework 6 Support

The following components have been updated to support EF 6.

Web Forms Scaffolding

Scaffolding, the code generator for basic CRUD operations for models in ASP.NET MVC, was rewritten for Visual Studio 2013. As a result of that rewrite, Microsoft can now offer scaffolding support for Web Forms. Specifically, create, replace, update and delete views can be generated from a model object.

You can read the full Web Forms Announcement on the .NET Web Development and Tools Blog.

Rate this Article