ASP.NET Web Forms is a server-side web application model designed to help developers create applications rapidly through graphical design tools and an event-driven control model that resembles desktop application development. section 2.2
Its main characteristics include:
- Rapid application construction through a graphical designer and simple event-driven programming. section 2.2
- A stateful programming model that can become complex in larger applications. section 2.2
- Limited control over generated HTML, which makes client-side development more difficult. section 2.2
- Strong dependence on System.Web.dll, .NET Framework, and IIS. section 2.4.3 section 2.2
Web Forms is therefore difficult to convert directly to ASP.NET Core. Such a conversion generally requires rewriting the application and may also require changing its design paradigm. Gradual migration can instead use Blazor Server page by page or reduce reliance on Web Forms constructs such as ViewState while introducing web API concepts. section 2.4.3
Figure 2.2 The relationships among ASP.NET Core, ASP.NET, .NET Core/.NET 5+, and .NET Framework. ASP.NET Core runs on .NET Core and .NET 5+, so it can run cross-platform. Conversely, ASP.NET runs on .NET Framework only, so it’s tied to the Windows OS.
Use the platform relationship diagram to distinguish ASP.NET Web Forms, which runs on .NET Framework and Windows, from ASP.NET Core, which runs on newer cross-platform .NET platforms. section 2.2
