Unless you've been locked away in a dark room for the past six years, you've likely already heard about ASP.NET Core. It is the reimagination of ASP.NET, the web framework we've grown to love, and at times hate 😜, over the past 18 years. With the former framework still being supported and actively worked on, it can be hard to make a case for switching off a framework with such a rich history, like ASP.NET, to a relatively new framework, even if it shares the same name.
In this article, we're going to look at the reasons why the team building the next generation digital experience platform, Kentico Xperience, decided to transition to ASP.NET Core.
Future friendly
Let me start by saying, ASP.NET and the .NET Framework are not going anywhere anytime soon. Much of Windows still relies on the .NET Framework and until such time that it doesn't, there will still be support and bug fixes for the .NET Framework. But, and it is a big one, there will be no major updates to the .NET Framework beyond version 4.8.
The future of .NET, and by virtue ASP.NET, is .NET Core. This is where investments are being placed. Which means you'll be able to take advantage of all the improvements being made to the platform and the languages used for development.
As an example, many of the C# 8.0 features have platform dependencies which are implemented in .NET Standard 2.1, which .NET Core 3.0 and newer will support, but .NET Framework 4.8 never will.
So, in order to stay innovative, competitive, and continue to attract top talent, the team looked for a platform that was familiar and would be supported for the foreseeable future.
Cross-platform support
Long gone are the days where clients will meet you where you are. As software creators, we NEED to be meeting our clients where they are and it's no longer exclusively on a dedicated platform, like Windows.
Unlike its predecessor, ASP.NET Core does not require IIS or Windows to develop or run. This means you can use other operating systems, like macOS and Linux, to develop applications and as hosting environments.
This may not seem like a huge deal to some, but if you're looking at the cost to run a Windows environment versus a Linux environment, you'll likely start to see a growing difference in cost. This could end up greatly reducing the operating costs of your applications allowing you to adapt quickly to changes happening within your market.
For development teams, this means we're able to reuse a majority of our code as we expand the reach of our application to other platforms.
Performance
Eight seconds.
No, we're not talking about the movie chronicling the life of PRCA Bull Riding World Champion, Lane Frost, but the average attention span of a website visitor. And if your site takes longer than three seconds to load, there's a 40% chance they'll abandon their visit to your website. So, it's no wonder most clients, partners and users will tell you your site needs to be faster.
This is one of the biggest benefits you'll gain when you switch to using ASP.NET Core and in my opinion, one of the most compelling reasons to make the move to ASP.NET Core.
Benchmark data shows ASP.NET core can do approximately 285,000 requests per second, whereas, ASP.NET averages approximately 1500 requests per second.
After moving to ASP.NET Core, the Kentico Xperience team ran some preliminary tests on start up times. They found the Dancing Goat starter site was starting up four times faster using ASP.NET Core.
Summary
Although migrating to a new platform is never fun and almost never easy, the .NET Core teams continue to add APIs and features to help ease migration efforts from the .NET Framework. The Kentico Xperience team also understands this and is currently looking at options to aid clients and partners in their migration efforts.
The Kentico Xperience team found being future friendly, cross-compatible, and highly performant compelling reasons to move from ASP.NET to ASP.NET Core.
What do you think? Are you ready to take the plunge? Something holding you back?
Need a little more convincing? Download Xperience 13 and see the impact of our transition to ASP.NET Core.