Skip to main content
All docs
V25.1
  • 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.

      Run Demo Download: Free 30-Day Trial

    • 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.

      Run Demo Download: Free 30-Day Trial

    How to Upgrade a Project: Useful Resources

    For information on how to upgrade your project, review the following resources:

    Watch Video: Migrating Real Web application from ASP.NET Webforms 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).

    Web Forms Component Blazor Component ASP.NET Core Component
    ASPxBinaryImage Use the <img> tag.[1] Use the <img> tag.[1]
    ASPxButton DxButton, DxButtonGroup Button, ButtonGroup
    ASPxButtonEdit DxTextBox TextBox
    ASPxCalendar DxCalendar<T> Calendar
    ASPxCallback Not needed. Not needed.
    ASPxCallbackPanel Not needed. Not needed.
    ASPxCaptcha Possible to integrate Google reCAPTCHA
    ASPxCardView DxGrid with a custom template,
    DxGridLayout (see Demo)
    DataGrid with a custom template.
    ASPxCheckBox DxCheckBox<T> CheckBox, Switch
    ASPxCheckBoxList DxCheckBox<T> CheckBox
    ASPxCloudControl
    ASPxColorEdit DxColorPalette ColorBox
    ASPxComboBox DxComboBox<TData, TValue> SelectBox
    ASPxDataView DxGrid with a custom template,
    DxGridLayout (see Demo)
    MultiView
    ASPxDateEdit DxDateEdit<T>, DxDateRangePicker<T> DateBox
    ASPxDiagram Possible to integrate DevExtreme Diagram Diagram
    ASPxDocking
    ASPxDropDownEdit DxDropDown, DxDropDownBox, DxDropDownButton DropDownBox, DropDownButton
    ASPxFileManager Possible to integrate DevExtreme FileManager FileManager
    ASPxFilterControl DxFilterBuilder FilterBuilder
    ASPxFloatingActionButton SpeedDialAction
    ASPxFormLayout DxFormLayout Form
    ASPxGantt Possible to integrate DevExtreme Gantt Gantt
    ASPxGaugeControl DxBarGauge BarGauge, CircularGauge, LinearGauge
    ASPxGridView DxGrid DataGrid
    ASPxHeadline
    ASPxHiddenField Not needed. Not needed.
    ASPxHint DxFlyout Popover, Tooltip
    ASPxHtmlEditor DxHtmlEditor HtmlEditor
    ASPxHyperLink Use the <a> tag. Use the <a> tag.
    ASPxImage Use the <img> tag. Use the <img> tag.
    ASPxImageGallery DxGrid with a custom template,
    DxGridLayout (see Demo)
    TileView
    ASPxImageSlider DxCarousel Gallery
    ASPxImageZoom
    ASPxLabel Use the <label> tag. Use the <label> tag.
    ASPxListBox DxListBox<TData, TValue> List
    ASPxLoadingPanel DxLoadingPanel, DxWaitIndicator LoadIndicator, LoadPanel
    ASPxMemo DxMemo TextArea
    ASPxMenu DxMenu Menu
    ASPxNavBar DxAccordion Accordion
    ASPxNewsControl
    ASPxObjectContainer
    ASPxPageControl DxTabs TabPanel
    ASPxPager DxPager
    ASPxPanel DxFormLayout Groups, DxAccordion, DxGridLayout, DxStackLayout
    ASPxPivotGrid DxPivotTable PivotGrid
    ASPxPopupControl DxPopup, DxWindow Popup
    ASPxProgressBar DxProgressBar ProgressBar
    ASPxRadioButton DxRadio<TValue> RadioGroup
    ASPxRadioButtonList DxRadioGroup<TData, TValue> RadioGroup
    ASPxRatingControl
    ASPxRibbon DxRibbon
    ASPxRichEdit DxRichEdit RichEdit
    ASPxRoundPanel DxFormLayout Groups, DxAccordion, DxGridLayout, DxStackLayout
    ASPxScheduler DxScheduler Scheduler
    ASPxSiteMapControl
    ASPxSpellChecker
    ASPxSpinEdit DxSpinEdit<T> NumberBox
    ASPxSplitter DxSplitter Splitter
    ASPxSpreadsheet Spreadsheet
    ASPxTabControl DxTabs Tabs
    ASPxTextBox DxTextBox, DxMaskedInput<T> TextBox
    ASPxTimeEdit DxTimeEdit<T> DateBox (type = ‘time’)
    ASPxTimer Use Microsoft’s Timer object. Use the setTimeout() global function.
    ASPxTitleIndex
    ASPxTokenBox DxTagBox<TData, TValue> TagBox
    ASPxTrackBar DxRangeSelector Bullet, RangeSelector, RangeSlider, Slider
    ASPxTreeList DxTreeList TreeList
    ASPxTreeView DxTreeView TreeView
    ASPxUploadControl DxFileInput, DxUpload FileUploader
    ASPxValidationSummary Use Microsoft’s ValidationSummary component. ValidationGroup, ValidationSummary
    ASPxVerticalGrid
    WebChartControl DxChart<T>, DxPolarChart<T>,
    DxPolarChart<T>, DxSankey, DxSparkline
    Chart, Funnel, PieChart, PolarChart, Sankey, Sparkline, Bullet
    Dashboard Dashboard Dashboard
    Query Builder Query Builder
    Reporting Reporting Reporting

    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:

    Expand the following sections for information on popular scenarios and software requirements:

    Generate and Manage Office Files (Word, Excel, PDF)

    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:

    Design Reports, Export Documents, and Download PDF

    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:

    Code Sharing, Data Access Security, and Reusable API Services

    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:

    Watch Video: Integrate the DevExpress Blazor Components into ASP.NET WinForms with Blazor Hybrid

    Footnotes
    1. For instance: <img src="data:image/png;base64,{imageBytes} />