Microsoft has renamed its next-generation web application framework ASP.NET Core 1.0, previously known as ASP.NET 5. In addition, the forthcoming Entity Framework 7, a database framework, will now be called Entity Framework Core 1.0
Explaining the change, developer evangelist Scott Hanselman said:
Naming the new, completely written-from-scratch ASP.NET framework "ASP.NET 5" was a bad idea for a one major reason: 5 > 4.6 makes it seem like ASP.NET 5 is bigger, better, and replaces ASP.NET 4.6.
Not so ... The whole .NET Core concept is new. The .NET Core 1.0 CLI is very new. Not only that, but .NET Core isn't as complete as the full .NET Framework 4.6.
We're still exploring server-side graphics libraries. We're still exploring gaps between ASP.NET 4.6 and ASP.NET Core 1.0.
Microsoft is rebuilding its .NET development platform in order to make it cross-platform and open source. In addition, the new modular design enables features such as native code compilation, improving performance.
The extent of the changes, and the consequences of untying the framework libraries from Windows, means that some features have not been ported.
ASP.NET 4.6 is the latest version of the old web application framework, and will remain supported. ASP.NET 4.6 runs only on the .NET Framework, whereas ASP.NET Core runs on both versions of .NET. Currently, ASP.NET Core only supports C#, so Visual Basic and F# developers must look elsewhere.
Comments to Hanselman's post illustrate the difficulties facing developers who want to migrate. "I tried moving my existing project in v4.5 to the core 1.0 and everything broke," said one. "I think I am going to have to redo the entire web api service end layer ... plus everything feels fragile or like it will change multiple times during the execution of a project that I am working on if I keep up to all the updates."
Others question whether ASP, which stands for Active Server Pages, is an appropriate name for the new framework. "There are more similarities between ASP.NET Core and Node's HTTP layer or Rack, and more similarities between ASP.NET Core MVC and Sinatra or Express than anything having to do with 'Classic ASP'," said another comment.
A more modern, cross-platform application platform that is better optimised for microservices and cloud deployment is a worthwhile goal, but the transition is not easy. ®