Sheraz Lodhi's Blog

Sunday, February 1, 2015

What's new in ASP.NET 5 , discussion on .NET core, Unified BCL, Runtime Adaption Layer, .NET Native Runtime and CoreCLR

What's new in ASP.NET 5?
ASP.NET 5 is the new version of ASP.NET. It is a lean version which is built upon the modular approach with minimum overhead. It also simplifies the hosting of ASP.NET website, as now supports XCOPY type deployments. Which means you just have to copy and paste your website and everything will work fine. You will not have to coordinate with IT department for dependencies as you don't even need to install .Net framework. All the dependencies will be packaged with the web application built with ASP.NET 5.

ASP.NET has following new features, I will be discussing each, one by one.

  • What is .NET Core , a flexible, modular and cross platform run-time
  • Open Source In GitHub (https://github.com/aspnet
  • What is new HTTP request pipeline in ASP.NET 5
  • Cloud Ready
  • Unified programming model 
  • Ability to see changes without re-building the project.
  • Ability to self host

.NET Core: 

.NET core is the Microsoft's bid to control fragmentation of their .NET framework when you as a developer are targeting multiple verticals i.e you want to develop applications which target multiple devices for example you have a web back-end , web front end then you have a desktop application and also functionality exposed for mobile devices. Due to fragmentation you have to create separate projects as many of the API's are different or in some cases not available across different verticals. In order to try to solve such issues shared project or portable class libraries were introduces.

.NET Core sits at the base of everything as shown in the image below. It is basically optimized version of .NET framework which is light weight and common across .NET Native and ASP.NET 5 and is available for windows, Linux and Mac.


Unified BCL as shown in the image is identical for both .NET Native and CoreCLR. What Microsoft has done is that they have created a unified Base class library and there is a layer named run-time Adaption layer which is specific to .NET run-time and has separate implementations for .NET Native Runtime and CoreCLR. According to Microsoft it contains types like String and Int32. 
.NET Native Runtime is for devices like RT and Windows Store apps and CoreCLR is for ASP.NET 5.

On top of BCL there are app-model specific API's one for Windows Store App Model and another for ASP.NET 5 App model.



Recommended Book

1 comment:

Popular Posts