Volume 30 Number 3
Editor's Note - Not Your Father's .NET Framework
By Michael Desmond | March 2015
Back in November at the Connect(); event in New York City, Microsoft unveiled a raft of development tools, frameworks and technologies that refined the direction of the development ecosystem. Visual Studio 2015, the Microsoft .NET Framework 4.6, the new .NET Core, and updated frameworks such as ASP.NET 5 marked a move away from monolithic frameworks and libraries, and toward a more componentized, open and cross-platform dev environment.
In our recent Visual Studio 2015 and Microsoft Azure special issue (msdn.microsoft.com/magazine/dn879346) we explored many of the innovations announced at Connect();. Among those was a feature article by Microsoft Senior Program Manager Daniel Roth, “Introducing the ASP.NET 5 Preview” (msdn.microsoft.com/magazine/dn879354), which dove into the latest version of the Microsoft Web application framework and its relationship with the .NET Framework and the new .NET Core. As Roth explained in the article, ASP.NET 5 has been “rebuilt from the ground up” to make it a more flexible, cloud-ready, cross-platform-savvy development platform for Web applications.
This month, Roth returns with the second part of his ASP.NET 5 exploration, fittingly titled “A Deep Dive into the ASP.NET 5 Runtime.” I caught up with him to ask about ASP.NET 5 and the impact that changes to the .NET Framework are having on Microsoft development.
“ASP.NET 5 has literally been rebuilt at every layer of the stack, from the tools in Visual Studio all the way down to the CLR itself,” Roth explains. “It runs on the new .NET Core, has a new cross-platform runtime environment and completely replaces System.Web.dll with a new lightweight request pipeline.”
.NET Core 5 is a refactored version of the .NET Framework, which can be tailored to the specific behaviors of an application and packaged as a private version of the framework for that application. Developers choose to employ as much or as little of the stack as needed. And because each app only calls to its companion .NET Core, developers can run multiple ASP.NET 5 applications on a single server, each unaffected by the other. Roth says Microsoft is busy building a .NET Core CLR for Windows, Mac and Linux.
One new feature of ASP.NET 5 that Roth singles out for attention is Tag Helpers for ASP.NET MVC 6, which lets developers express server-side rendering logic as custom HTML tags.
“They enable you to define your own domain-specific language in HTML. Tag Helpers work seamlessly with the HTML editor and Razor IntelliSense giving you a much more natural way to create views,” Roth says. “We are providing a bunch of Tag Helpers out of the box and it’s easy to create your own. I think Web developers are really going to love this feature.”
Not that Microsoft is ignoring the .NET Framework, which now iterates to version 4.6. ASP.NET Web Forms applications get a welcome boost with this update, adding support for HTTP 2.0 and a “Roslyn” CodeDOM provider.
Beyond new features and capabilities, ASP.NET and its foundational underpinnings in .NET are undergoing a major transformation, as Microsoft takes these software platforms open source. The goal is to reshape both Visual Studio and the .NET Framework to reflect the evolving demands of modern software development.
“This requires us to completely rethink how we ship frameworks and tools so that we can be more agile and get features into the hands of developers faster,” Roth says. “By making ASP.NET 5 and .NET Core open source and available completely via NuGet, getting new features is just a NuGet-package update away.”
Michael Desmond is the Editor-in-Chief of MSDN Magazine.