What you need to know about the new ASP.NET vNext Runtimes!

What you need to know about the new ASP.NET vNext Runtimes!

The latest version of ASP.NET, vNext, will come with 3 runtimes; the Full Runtime, Cloud-Optimized Core CLR, and the Cross-Platform Runtime. Choosing the right one matters but shouldn’t cause a scare. Here’s why:

  • The vNext Full Runtime is 100% compatible with legacy applications. You can upgrade to vNext today without making any changes.
  • vNext Core CLR is “cloud-optimized”. It’s minimal, completely self-contained, and offers the highest performance. It’s also only 11 MB in size. You can build an app using the Core CLR for a machine that doesn’t even have .NET installed. Obviously, this does require breaking changes because it’s a fundamentally different way of deploying .NET.
  • The vNext Cross-Platform Runtime is still in the works, so it’s not a concern to most people. Cross-platform development is already possible with the Core CLR and Mono but will soon see full support from Microsoft.

Now, the greatest set of features come with the Core CLR. Yes, this will break things, but let’s see if the benefits are worth giving it a try:

  • Cross-Platform. Distribute apps to Linux or Mac OS. Self-host or run on another server in the cloud. For the first time ever, .NET isn’t tied to the Microsoft platform. That’s portable applications as a service.
  • Pluggable via Dependency Injection. Dependency Injection on the back-end means you can replace the server, the routing mechanisms, logging, database framework, and even the IoC container. This not only makes replacing components easy, but makes it possible to mock and test every aspect of the framework, supporting test-driven development (TDD).
  • Flexible Configurations. Load settings from the new project.json configuration file, a custom configuration file, the host operating system’s environment or any other source of choosing. Create custom command-line accessible configurations for each deployment. This can provide options for everything from self-hosting to component replacements specific to Mac OS or Linux builds.
  • Self-Hosting. Self-hosting means no .NET runtime or IIS is required to be installed on the host machine. Create minimal, cross-platform apps that come with everything they need.
  • Side-By-Side Versioning. Since Core CLR applications are self-contained, they can be updated without affecting other applications or the system they’re deployed to. No more system-wide .NET installs, so no breaking or disrupting existing apps or services.
  • Minimal. Powerful. By making it more modular, adding a new just-in-time (JIT) compiler, RyuJIT, and introducing a more efficient HTTP pipeline, the Core CLR can see up to 10x – 30x performance all-around. This includes memory usage reductions and faster processing.
  • Command-Line Support. Every function in Visual Studio now has a command-line equivalent. Automate build scripts, NuGet package retrieval, compilation, deployment. Automate complex environments with the command-line.
  • Real-time Updates. Build and run your ASP.NET project, update a file, hit save, and refresh the page. No need to re-build. Thanks to Roslyn, Microsoft’s new C# compiler, you can now see code updates in near real-time.
  • Automated Dependency Resolution. Update your project.json file and see NuGet packages restored for you immediately. Project.json also comes with Intellisense in Visual Studio.
  • Third-Party Friendly. Update files in Sublime Text or another choice editor and still get real-time updates and automated dependency resolution. Not to mention .NET is open-source.
  • Open-Source + Integration. Include the .NET source itself into your project. Now you can be sure of the cause of internal .NET framework exceptions. Now you can debug and extend the .NET framework. Hosted on GitHub.
  • Remote Debugging. New diagnostic and tracing tools make it easier to discover issues with your app in the cloud.

Note Worthy:

  • Unified programming model – MVC, Web API and Web Pages all combined into a singular framework. No longer separate frameworks with similar concepts. “Controllers” are just controllers, not “Web API Controllers” or “MVC Controllers”. Same routing, same controllers, same Razor.
  • Modular – Don’t use what you don’t need. The Core CLR has been broken down into components where you only use what you explicitly include, not the full .NET framework.
  • Everything’s a NuGet Package – Libraries and other dependencies will automatically be resolved for you on-the-fly once you modify the project.json file. It comes complete with Intellisense and inspection as to what modules are included with each package.
  • New Features for WebForms – HTTP 2, Async model binding, Roslyn CodeDOM Compilers. However, the cloud-optimized runtime does not work with WebForms.
  • Application Modernization – All legacy applications will continue to work on the latest version of the .NET framework’s full runtime. The Cloud Optimized CLR will require changes, and possibly removal or replacement of features, however. Just use the Full CLR, and you can upgrade to the new ASP.NET right away!

 
If you’re wondering if your application can run without modification on the Cloud-Optimized CLR, Contact Us today and we’ll help you evaluate your existing application.

Let's create something amazing.

Coffee Much?

Built in center of everything 🌎 Indianapolis, IN.

Privacy Policy