(This article was updated on August 10 2023, to reflect .NET 8’s release.)
In the age of .NET5+ (.NET 5 to .NET 8), and despite Microsoft’s best efforts, Web Forms won’t die. Certain fanatics are keeping the depreciated technology alive and kicking well past its “best before” date – and they claim it’s for good reasons.
If I’m honest, my first thoughts were probably close to yours. “That seems really backward, lazy, and just outright irresponsible.” However, after scrolling through the forums and talking to a few dedicated WebForms followers, I’ve been converted.
Viva La Web Forms
Web Forms is what many industry professionals are using now because it continues to work. I like to think of Web Forms like a trusty landline. It’s powerful, scalable, and mature. Microsoft has done its best to convince IT organizations to migrate but it’s a hard sell. Rewriting your huge ASP.NET Web Forms for Blazor, or Razor is a commitment that will take a considerable amount of time, training, and money – and for very little benefit to your end goal.
ASP.NET Web Forms has been around for nearly two decades and has a proven track record for the scalable and stable building of Web applications. Countless applications used by some of the largest high-volume websites rely on ASP.NET and Web Forms to run. It’s no surprise that businesses continue to use Web Forms when stability is required above all else.
So, it’s scalable, stable, and dependable. But that’s not really the reason why IT organizations use Web Forms. One of its most attractive features is the extensive controls that have been compiled over the last 20 years. There is a multitude of community-made custom controls that provide all sorts of additional functionality to ASP.NET. The controls are powerful, easy to use and provide a full ecosystem from development experience to run-time capabilities.
To top it all off, Web Forms is also fairly easy to pick up and get started with. Regardless of skill level, most developers are able to pick it up and get started immediately since it automates several repetitive tasks. Over the last 20 years, Microsoft has designed and tooled the Visual Studio Web eco-system with the development experience in mind with things like drag and drop functionality on a visual designer and property sheet support.
So, Web Forms WILL Live Forever!?
Let’s rip this band-aid off quickly. The short answer is no – ASP.NET Web Forms is dying.
You can continue running Web Forms applications for decades to come because it is tied to the operating system. And just like .NET Framework itself, Web Forms is so entrenched in the .NET Framework that Microsoft will not say they’re deprecating it officially. Your Web Forms applications will continue to work as long as you have people to support them.
However, just like Classic ASP applications, these will become increasingly brittle the older they get. One day your IT organization will have to migrate away from Web Forms.
But, with a little bit of work and the right tool, you can safely extend the life of your current ASP.NET Web Forms for decades to come.
How to Extend the Life of Your ASP.NET Web Forms Applications
1. Consider Security Risks
If your Web Forms application is not exposed to the Internet, there’s little risk in maintaining an aging app. Even so, internal applications can be compromised and if a vulnerability is discovered, then you’ll have to change it. This becomes increasingly expensive as time passes.
If your web application requires an old browser (Internet Explorer only, for example), then you’ll have to also control the desktop. This is an added cost and barrier to using the application—not a huge barrier, but not insignificant.
3. You need to help train your replacement’s replacement’s replacement
ASP.NET Web Forms is a depreciating technology today. What that means is you need to spend time documenting what Web Forms features the application leverages and how it uses (or abuses) those features. I’m not suggesting you make a manifesto, Google will still exist in 20 years’ time. What I’m suggesting is that you create a resource for some future employee who has never heard of Web Forms and can quickly learn about how to maintain that application.
If you and your Web Forms application run fine on modern browsers, you may never have to rewrite your application. But in case you still have questions, we answer many of the common questions about the “end” of Web Forms.
4. Utilize a Tool Like BuildMaster
BuildMaster paired with adopting a CICD mentality will extend the life of your ASP.NET Web Forms applications.
Maintaining your ASP.NET Web Forms application using a CI/CD tool like BuildMaster gives you many benefits:
|Faster deployments||Software moves faster than people can|
|More time spent developing||The software automates tedious tasks like watching a script execute|
|Higher-quality releases||Pipelines can be configured with as many automated checks as you want, and run much faster and more accurately than humans could|
|Security at high speeds||Automated gates and in-tool approvals skip the email chain without skimping on security|
|Audit trails||Every action in the tool automatically creates an easy-to-access log|
|Easier rollbacks||BuildMaster stores previously successful builds and deployments, which can be immediately redeployed when necessary|
|the .NET5+ mindset||When you finally have to make the switch, you and your people will already be in the right headspace|
To summarize, as long as you deploy quickly and consistently, you can continue to use Web Forms.
When Should I Migrate?
That’s a tough question you have to ask yourself and answer on behalf of your clients.
At the end of the day Web Forms, Blazor, Razor, etc. are just tools. Your clients (often your organization) come to you because they want software that works well, works reliably and doesn’t cost them a fortune. They don’t care (and probably aren’t even aware) of the differences between the two technologies.
If you’re unable to provide those 3 basic things to your clients because of the natural hiccups that come with migrating to a new technology, it might be a good idea to keep some of your current ASP.NET Web Forms libraries and plan a gradual migration.
I won’t lie, if I client came to me today and asked for a web application similar to one I’ve done in the past, I’d copy work I’ve already done in Web Forms rather than start new in MVC or Blazor. I would also be much faster at fixing bugs in Web Forms.
Extend The Inevitable
Web Forms is dying and while I once was a person who thought we should all bury it and move on, I’ve come to appreciate it for what makes it special. Like the old landline phone I have sitting on my desk, I can always depend on it and trust it’ll take and receive calls well past my tenure. ASP.NET Web Forms is dependable and at the end of the day, Web Forms, Razor, Blazor, etc. are just tools. If Web Forms is the tool that helps your IT organization get the job done quicker, with fewer mistakes, and cheaper -then it’s the right tool to use.
If you’re interested in keeping that tool functioning for longer, leveraging a tool like BuildMaster will extend its life.
Slow and steady is going to win this race. There is no immediate need to rewrite your Web Forms applications. Like Classic ASP, with the right staff, documentation, and tools, Web Forms applications are likely to be maintainable well into the 2030s, if not longer.
However, I hope I can keep mine living well past then. I can proudly say I’ve joined the army chanting “Viva La Web Forms.”