Skip to main content

Use Visual Studio Templates to Create an ASP.NET Core Application with a Report Designer

  • 4 minutes to read

This tutorial describes how to use the DevExpress Template Gallery to generate a basic ASP.NET Core application that contains the End-User Report Designer control.


See the following topic for information about DevExpress Reporting in ASP.NET Core applications: ASP.NET Core Reporting.

The following tutorial explains how to add a report to an ASP.NET Core application: Create a Report in Visual Studio.

The DevExpress Template Gallery implements a step-by-step process that allows you to create an ASP.NET Core application with a Report Designer.

The created application implements the CustomReportStorageWebExtension class that saves the reports you change in the Report Designer to a SQLite database (reportsData.db) in the Data folder. This sample storage is intended for demonstration purposes only. Do not use it in production. Create a ReportStorageWebExtension class descendant instead and implement logic to save reports.

Follow the steps below to create an ASP.NET Core application in Visual Studio:

  1. Ensure that Node.js 10.0 or later with the npm package manager is installed on your computer. Use the node -v and npm -v console commands on 64-bit Windows systems to check package versions. Check the PATH environment variable’s value if a package’s version does not match the version you installed, as there may be a conflict between an x86 and x64 package.

  2. Select FILE | New | Project in the main menu or press CTRL+SHIFT+N to create a new project.

    Create New Web Application

  3. Select the DevExpress v23.1 Web App Template Gallery, and click Next:

    Select Web App Template Gallery

  4. Specify a project name and location, and click Create:

     Web App Template Gallery Configure Project

  5. Select Reporting Application from the .NET 6 category in the invoked DevExpress Template Gallery.


    Select the framework version and click Create Project.

  6. Set Add Designer Page to true to add the Report Designer (the Designer.cshtml view) to the web application. You can add a Web Document Viewer and a Report Designer to the application.


    Use the following Report Designer settings:

    Report Storage Name
    Specifies the class name of a server-side report storage. This storage allows you to open report layout data from various sources. A storage service implemented in the template is based on the reportsData.db SQLite database in the Data folder. If you modify a report in the Web Report Designer, it is saved to the database in XML format. If you disable the Add Report Storage property, no report storage is created, but you can add a report storage at a later stage.


    The template generates a sample storage (a ReportStorageWebExtension descendant) for demonstration purposes only. Create your own implementation for use in production.

    Data Binding Mode
    Specifies the data fetch mode for report controls. You can switch between legacy binding mode and expression bindings.
    Add Sample Database
    Specifies whether to create a sample connection string and register it in the Report Designer to create SQL Data Sources in the Report Wizard and Data Source Wizard. The connection string is also used to register a predefined data source.
    Add Sample JSON Data Connection Storage
    Specifies whether to create a storage and register it to create JSON Data Sources in the Report Wizard and Data Source Wizard.
    Add Sample Data Object
    Specifies whether to add a sample data object to an application and register this data object to create Object Data Sources in the Report Wizard and Data Source Wizard.
    Enable Rich Text Editor
    Specifies whether to add an in-line Rich Text Editor for the RichText control.

    Click Create Project to apply these settings to the project.

  7. After Visual Studio has created the application, right-click the package.json file in Solution Explorer and choose Restore Packages.

    Restore Packages

  8. Optional. You can configure the Report Designer to load a report when the application starts. Navigate to the Views | Home | Designer.cshtml file and replace the built-in unique report name with your report’s name:


    If you implement a custom report that inherits from XtraReport and want to open it in the End-User Report Designer, add a constructor without parameters to this report.

        var designerRender = Html.DevExpress().ReportDesigner("reportDesigner")
  9. Run the project to see the result: