Migrate Web Forms Applications to .NET
- 9 minutes to read
This article explains how to transition DevExpress ASP.NET Web Forms projects to .NET.
If you are starting a new project or modernizing an existing one, you will likely use .NET instead of the outdated .NET Framework v4.x.
To explore why you might choose one framework over another, refer to the guide in Microsoft’s documentation: Choose between ASP.NET 4.x and ASP.NET Core.
If you target a newer framework you need to rebuild the UI from scratch. You cannot convert an application from .NET Framework v4.x to .NET, but you can reuse your data layer and business logic.
The following sections reference useful migration resources and help you choose DevExpress products designed for .NET instead of ASP.NET Web Forms.
#DevExpress UI Components for Modern .NET Development
If you want to use modern .NET versions for server-side web development, consider the following DevExpress product lines instead of ASP.NET Web Forms:
Blazor UI Components
The DevExpress Blazor Component Suite ships with components and development libraries for Blazor Server, Blazor WebAssembly, and Blazor Hybrid hosting models. The suite includes a comprehensive set of UI controls, such as Data Grid, Pivot Grid, Scheduler, Chart, Data Editors, and Reporting. Review the complete list of available components in our documentation.
DevExpress Blazor Components are included in the following subscriptions: ASP.NET, DXperience, and Universal.
ASP.NET Core Components
The DevExpress ASP.NET Core Component Suite ships with 80+ high-performance and responsive UI components, such as Data Grid, Pivot Grid, Scheduler, Chart, Rich Editor, Spreadsheet, Diagram, Map, Data Editors, Reporting, and many more. Review the complete list in our documentation.
DevExpress ASP.NET Core Components are included in the following subscriptions: DevExtreme (excludes Rich Editor and Spreadsheet), ASP.NET, DXperience, and Universal.
#How to Upgrade a Project: Useful Resources
For information on how to upgrade your project, review the following resources:
- Blog: Modern Desktop Apps And Their Complex Architectures
- Blog: From WebForms to Blazor. Why should you (not) do it?
- Blog: Choosing a Framework/App Architecture for Desktop & Mobile Cross-Platform Apps
- Microsoft topic: Upgrade an ASP.NET Framework Web Forms app to ASP.NET Core MVC
- Microsoft topic: Overview of porting from .NET Framework to .NET
- Microsoft topic: Migrate from ASP.NET Web Forms to Blazor
#DevExpress UI Components: Equivalents for Different Platforms
Most of our product lines contain similar component sets. Regardless of the platform, developers usually require the same UI controls for their business apps and websites.
The table below lists DevExpress ASP.NET Web Forms components and their DevExpress Blazor and ASP.NET Core equivalents (or ways to implement similar functionality).
#Have a Question?
If you have additional technical questions about migrating to other UI technologies within the DevExpress ecosystem, feel free to contact us: DevExpress Support Center.
#FAQ
#Can ASP.NET Web Forms applications run on macOS and Linux?
No, ASP.NET Web Forms applications cannot be deployed to Linux-based web servers. ASP.NET Web Forms applications are designed to run on Windows-based web servers and Internet Information Services (IIS) because they rely on .NET Framework-specific APIs and the System.Web assembly in particular. (We do not take into account Mono runtimes due to their unofficial status and because DevExpress components do not work with them.)
#I want to maintain ASP.NET Web Forms apps and create companion apps for non-Windows platforms (Web, Mobile, macOS/Linux). What features are available in the DevExpress ecosystem and how can I reuse my code?
DevExpress offers a variety of feature-rich visual UI controls and non-visual components/libraries for developing desktop, web, and mobile apps including APIs/services (based on modern versions of .NET and JavaScript).
#UI Controls for Building Traditional Line-of-Business, CRUD, Office-Inspired Apps
DevExpress UI libraries allow you to build web, hybrid, or cross-platform software with JavaScript, ASP.NET Core, or Blazor. You can also use tools like Electron or BlazorWebView/HybridWebView from .NET MAUI to pack your web applications inside a native container application. Or use .NET MAUI to build native mobile apps.
DevExpress UI libraries include:
- UI Controls for ASP.NET Core (MVC, Razor Pages)
- UI Controls for Blazor (Server, WebAssembly, Hybrid)
- UI Controls for JS / TS (Angular, React, Vue, jQuery)
- UI Components for .NET MAUI (Android, iOS)
- Business Intelligence Dashboard (ASP.NET Core, Blazor, Angular, React, and Vue)
- XAF (Cross-Platform .NET App UI for Blazor & ASP.NET Web Forms)
Expand the following sections for information on popular scenarios and software requirements:
The DevExpress cross-platform Office File API allows you to create, load, edit, convert, sign, and print rich text documents, Excel spreadsheets/workbooks, and PDF files across all platforms and operating systems that support recent .NET versions:
- Windows, Linux, macOS
- Non-Windows environments (Azure, AWS, Docker, etc.)
You can integrate the DevExpress Office File API library in the following application types:
- Desktop (WinForms, WPF)
- Web (ASP.NET Core MVC, Razor Pages, Blazor Server/WebAssembly, Blazor Hybrid, Web API)
- Mobile (.NET MAUI)
- Console and API service applications
- Cross-platform .NET UI frameworks (for example, Avalonia)
Read the following help topics for additional information:
- Integrate Excel Spreadsheet API into Blazor Server App
- Integrate Word Document API into Blazor Server App
- Integrate Office File API into .NET MAUI App (macOS, iOS, Android)
- ASP.NET Core Backend Web/REST API for Office File API with Access Control Rights)
- Azure App Service Container (Linux) for Office File API App
- Amazon ECS (Linux Container) Using AWS Fargate for Office File API App
- Dockerize an Office File API Application
DevExpress Reports is our feature-complete reporting platform and component library for the .NET ecosystem that targets Web, Mobile, and Desktop platforms. You can incorporate a Report Viewer or End-User Report Designer directly within your application, generate PDF files from predefined templates, export reports to a variety of file formats. With DevExpress Reports, you can address requirements across multiple operating systems and hosting environments (Windows, Linux or macOS, Azure or AWS).
Read the following help topics for additional information:
- Reporting for ASP.NET Core
- Embedded JS Reports (Angular, React, Vue, jQuery)
- Reporting for Blazor
- Integrate DevExpress Blazor Report Viewer into .NET MAUI Blazor Hybrid App
- Integrate Reporting Tools into .NET MAUI Apps (macOS, iOS, Android)
- ASP.NET Core Backend Web/REST API for Reporting with Access Control Rights
- DevExpress Reporting for Avalonia
The amount of code you can reuse from existing applications depends on the architecture of your application. However, upgrading to modern versions of .NET and refactoring your code can increase the likelihood of code reuse so that different UI clients can use the same business logic or API services.
You can share your existing database, data model, business logic, authentication/authorization settings, and cross-platform C# code between multiple UI clients (desktop, web, mobile) that target different platforms. API services are a natural choice that offers security (UI clients cannot access database connection information or directly read/modify database tables), usability, and ease of maintenance. For example, if your application utilizes Entity Framework Core or XPO ORM, you can build a data service that can be used by your DevExpress DevExpress WinForms, Blazor, JavaScript, or mobile applications that target .NET.
Read the following help topics and blog posts for additional information:
- Share Code Between Desktop (ASP.NET WinForms/WPF) and Mobile (.NET MAUI) Projects
- DevExpress ASP.NET WinForms MVVM (for sharing UI logic with .NET MAUI/WPF Apps)
- Integrate the DevExtreme JavaScript HTML Editor into a ASP.NET WinForms Application
- Modern Desktop Apps And Their Complex Architectures
- DevExpress Backend Web API Service & Role-based Access Control / Permission Management
- ASP.NET WinForms — Connect a .NET Desktop Client to a Secure Backend Web API Service (EF Core with OData)