Virtual Developer Workshop: Containerized Development with Docker
Recently, Microsoft announced the preview availability of the next generation of ASP.NET called ASP.NET vNext.
Microsoft has chosen a new direction with ASP.NET vNext – it is open-source.
- ASP.NET vNext has been redesigned from the ground up to optimize it for cloud based applications.
- ASP.NET vNext combines MVC, Web API and Web pages into one framework, now identified as MVC 6, which uses a common set of abstractions for routing, action selection, filters, model binding and many more features.
- The MVC6 framework is leaner framework that has no dependency on System.Web, which results in a faster startup time and lower memory consumption.
- To support cloud applications, the vNext apps have a smaller footprint. A subset of the .NET framework for vNext apps is 11 MB in size compared to the regular .NET framework size of 200 MB.
- Side-by-Side deployment is possible for vNext applications running different versions of the framework on the same server.
- vNext apps are insulated from server framework changes.
- ASP.NET vNext is host-agnostic – a vNext app will run in IIS as well as another custom process, which will self-host vNext.
- Dependency injection works out of the box on ASP.NET vNext applications since it is part of the core framework now.
- ASP.NET vNext uses the Roslyn compiler – this implies that code is compiled dynamically. This provides the ability to edit a file to make code changes and simply refresh the browser without the need to recompile the web application.
- The biggest thing about ASP.NET vNext s that it is open-source – a marked shift from Microsoft, w.r.t. its development tools.
We can see from the list above that the changes in ASP.NET vNext are not trivial. In fact, there are many breaking changes in ASP.NET vNext to support these new “improvements”.
New Features in ASP.NET vNext
The new Web APIs in ASP.NET vNext support returns JSON and XML.
Support for real-time bi-directional client-server communication is provided in ASP.NET vNext via the ASP.NET SignalR library.
Building ASP.NET vNext Applications
Since ASP.NET vNext is still in preview phases, the standard caution goes out – avoid assuming that it will be production quality or that feature behaviors will be the same when it is finally realized.
To build ASP.NET vNext, we need to get the Visual Studio 14 CTP. Note that there are known compatibility issues with installing Visual Studio 14 CTP along with Visual Studio 2013. It is highly recommended that Visual Studio 14 CTP be installed on a virtual machine or on a clean installation.
Creating a new ASP.NET vNext application is simple. Once Visual Studio 14 CTP is installed, launch Visual Studio and create a new Web Application based on template names ASP.NET vNext Empty Web application.
In this article, we were introduced to ASP.NET vNext and learned how to get the development tools to begin developing ASP.NET vNext applications.
About the author
Vipul Patel is a Program Manager currently working at Amazon Corporation. He has formerly worked at Microsoft in the Lync team and in the .NET team (in the Base Class libraries and the Debugging and Profiling team). He can be reached at email@example.com