- What is FastReport?
- FastReport as a Core Component of Reporting Systems
- Benefits of Integration with .NET
- 1. FastReport Installation
- 1.1. Requirements
- 1.2. Adding FastReport NuGet Packages
- 1.3. Licensing and Activation
- 1.4 Editions Overview
- 1.5 Customization and Development Capabilities
- 1.6 Community Support and Use Cases
- 2. Creating a Simple Report
- 2.1. Using FastReport Designer
- 2.2. Report Layout Design
- 2.3 Data Binging
- 2.3. Previewing the Report
- 2.5 Exporting the report
- 2.6 Quick Start: “Hello, PDF”
- 2.7 FastReport .NET Core Example (Step-by-Step)
- 2.8 ASP.NET Core Web Viewer – Windows & Linux (Skia)
- 3. .NET Code Integration and Calling the Report from the Application
- 3.1. Calling a Report with a Database Connection
- Conclusion
- Appendix: Resources and Documentation
What is FastReport?
FastReport is a powerful report generator for the new generation of .NET ecosystems. It includes a report designer for creating and customizing layouts, a runtime engine for generating reports and flexible integration for desktop, web and server applications.
It is often used in modernization projects, including Delphi to .NET migration. Reporting logic needs to be re-implemented on newer frameworks then.
Its core building blocks are bands, data sources and report templates. Developers can create structured reports with reusable text objects.
FastReport comes in two editions: Open Source and Commercial (Full Version). Details about licensing and differences between these editions are explained in Section 1.4.
FastReport as a Core Component of Reporting Systems
In data-driven applications, FastReport acts as a bridge between raw data and business insights. It’s used to generate operational PDFs, invoices and scheduled exports that can be embedded into web or desktop interfaces.
Typical users include .NET development teams that build internal tools or enterprise applications. Those usually require automated reporting and web API integration. With FastReport, reports can be created from multiple data sources and delivered instantly to end users.
Benefits of Integration with .NET
FastReport works perfectly with .NET applications. The integration provides several practical benefits:
- Compatible with modern .NET Frameworks (8+) and cross-platform through .NET Core.
- Available via NuGet packages, making installation and updates simple.
- Supports asynchronous APIs for scalable report generation.
- CI/CD friendly – works smoothly with automated build pipelines.
- Includes ASP.NET Core WebViewer for viewing reports directly in a browser.
These advantages in their sum make FastReport a natural fit for applications requiring highly performant reporting within the .NET ecosystem.
In this guide, you will learn how to install FastReport .NET 8.0, create a simple report, and export this report to PDF. You will learn how to install it using NuGet, connect data sources, FRX file usage, and call reports from a .NET or ASP.NET Core Web API project.
1. FastReport Installation
1.1. Requirements
Before installing FastReport, ensure that your environment meets the following:
- .NET 8.0 SDK. Your project must target the .NET 8.0 platform. If you need, download the latest version from the Microsoft official site.
- IDE. You can use Visual Studio, JetBrains Rider or any other IDE. Check whether .NET 8.0 support is enabled in the IDE settings.

1.2. Adding FastReport NuGet Packages
The simplest way to add FastReport in your .NET project is via the NuGet package manager or via the command line.
- Option 1: Using NuGet Package Manager (Visual Studio):
- Right-click your project in Solution Explorer and choose Manage NuGet Packages.
- Type FastReport in the search box and select the FastReport.OpenSource package from the results.
- Click Install and wait for the installation to complete.
- Option 2: Using the Command line. Run the following in the Package Manager Console:
Install-Package FastReport.OpenSource
This will install the latest version of FastReport in your project.

Tip. Always match the package version to your .NET Target Framework (TFM). For long-term projects, pin a specific major version in *.csproj to ensure stability.
Also, developers coming from Delphi software development can easily adapt to the .NET toolchain. FastReport integrates through NuGet packages and supports familiar component-based design patterns.
1.3. Licensing and Activation
Before you start using FastReport, make sure you understand the licensing options and activation process.
- Free version. The free edition of FastReport provides basic reporting capabilities suitable for learning and small projects. However, advanced features and full export functionality are only available in the commercial version.
- Licensing. If you want to use the full version, you can purchase a license from the official FastReport website. After receiving your license key, activate the program by entering your license key from the FastReport activation window.
Note: The free version has some limitations, for example, the full list of export formats may not be available.
Free version limitations:
– Random replacement of report content with the text “Demo version”.
– A visible “Demo version” watermark on printed and exported reports.
For this article, we use the trial version of FastReport, downloaded from the official installation link.

You can proceed directly, as the welcome screen provides convenience for automatic installation.

Once the user agreement is accepted, the installation process will continue.


Next, select the type of FastReport source you want to install. For this guide, we will use the .NET Trial version.

After the installation is complete, FastReport will be ready for use.
1.4 Editions Overview
| Edition | Key Features | Recommended For |
| Open Source | Basic report generator, core data source connectors, limited export formats | Learning, prototypes, small internal tools |
| Full Version | Extended exports (Excel, Word, PDF), web API viewer, designer UX improvements, professional support | Production systems, SaaS, enterprise reporting |
1.5 Customization and Development Capabilities
Developers can extend FastReport through scripts, custom report objects, or by connecting any supported data source (SQL, XML, JSON file, etc.). Integration via NuGet packages makes it compatible with CI/CD and containerized .NET environments.
For advanced projects, especially when integrating legacy systems, review best practices for avoiding memory leaks in Delphi apps.
1.6 Community Support and Use Cases
FastReport has active community support through GitHub, documentation and forums. It’s widely used for:
- Generating reports in ASP.NET Core Web API apps.
- Embedding reports into WinForms and WPF projects.
- Automated PDF export and email delivery pipelines.
2. Creating a Simple Report
2.1. Using FastReport Designer
FastReport Designer is a visual tool that simplifies the process of creating and customizing reports.
- Overview of the interface. The Designer provides a drag-and-drop interface that allows you to easily build reports by adding components, such as data tables, charts, text boxes and images. This makes it simple to design reports without writing code.
- Adding data sources. The first step in building a report is connecting your data sources. FastReport supports various data formats, including SQL databases, JSON files, and XML. Within the Designer, you can define and manage these data connections directly.

After opening a blank report layout, you can connect your database by selecting New Data Source from the Actions box.

With FastReport, we are not obliged to use only MSSQL. If you wish, you can define your data in formats such as JSON and XML and create your reports.

You can flexibly use all the options in your database during import. In addition to tables, procedures and views can also be imported into FastReport and used in reports as well.
2.2. Report Layout Design
- To begin designing your report, use the Table component to display structured data. In this example, we’ll create a simple report that lists company personnel details such as Name and Age.
- Adding headers, data fields, and footers. Make your report easier to read by adding:
- Header rows – to label each column (e.g., Name, Age).
- Data fields – bound to your data source to display actual values.
- Footer rows – to include additional information such as totals, summaries, or page numbers.
- Style and formatting options. Use the built-in style and formatting tools to make your report look polished and professional. For example, you can apply bold headers, adjust cell colors, and modify font styles to improve visual clarity.


In a simple layout, you can create the entire report using only text components. When adding text fields, the modal window displays both System Variables and Data Source variables for convenience. By selecting and dragging these elements into the report, you can quickly assemble a complete report layout using the drag-and-drop feature.
2.3 Data Binging
Data can be linked to reports either at design-time or through code.
- Design-time: define a data source in the report designer, connect to SQL, JSON, or XML, and drag fields onto text boxes.
- Code-first: load the frx file and call RegisterData(IEnumerable<T>) or RegisterData(DataSet) to bind runtime data from your application or web API.
Common pitfalls include mismatched dataset names or missing table aliases. Keeping schema names stable across environments prevents broken bindings. Both methods are valid. The choice depends on deployment and automation requirements.
2.3. Previewing the Report
- Running the report and viewing it in the Preview Mode. After completing the design, you can preview your report to verify its layout and content. The Preview Mode lets you check how the report will appear to end users and identify any formatting or data-binding issues before exporting.


You can see a preview of the report you are working on via File-Preview or Report-Preview.
- Exporting the report in different formats. FastReport allows you to export your report to multiple formats, including PDF, Excel (XLSX), and Word (DOCX). In Preview Mode, click the Save button and choose the desired export format to generate a file version of your report.

2.5 Exporting the report
FastReport supports exports to PDF, Excel/CSV, HTML, and image formats. You can export directly from the Designer or via code after calling Prepare().
For accurate PDF export on servers, embed fonts to avoid layout shifts. This step is essential for Linux and containerized environments.
2.6 Quick Start: “Hello, PDF”
| 12345 | using FastReport;
Report report = new();
report.Load("sample.frx");
report.Prepare();
report.Export(new FastReport.Export.Pdf.PDFExport(), "report.pdf");
|
This minimal example works on .NET 6-8. Keep the frx file in your project, set Copy to Output Directory = Always, and confirm relative paths. The result is a ready-to-share PDF export produced by a few lines of code.
2.7 FastReport .NET Core Example (Step-by-Step)
Bind a List<T> or JSON file as a data source, call RegisterData(), and run the same Prepare() → Export() pattern to produce PDF or HTML.
Since .NET 5, “.NET Core” and “.NET” are unified; this example targets .NET 6-8 and behaves identically across platforms.
2.8 ASP.NET Core Web Viewer – Windows & Linux (Skia)
Two deployment paths:
- Windows (GDI+) – add FastReport.Web via NuGet packages, call app.UseFastReport(), and render in a Razor page:
<fr-web-report report=”Reports/sample.frx”></fr-web-report>
- Linux/macOS (Skia) – add FastReport.Core.Skia, install fonts, and include native assets for correct PDF export.
Troubleshooting:
- Missing fonts → install ttf-mscorefonts.
- Right-to-left text → enable RightToLeft in text objects.
- Performance → cache prepared report objects for reuse in your web API.
3. .NET Code Integration and Calling the Report from the Application
3.1. Calling a Report with a Database Connection
After saving the report you created as a .frx file, you can include it in your .NET project and call it directly from the application. If your report uses a MSSQL connection, make sure to install the “FastReport.Data.Mssql” package.

For this example, we’ll add the .frx report file to our BasicFastReportDotnet8 project, which is a .NET 8 console application.

The packages are:
- FastReport
- FastReport.Data
- FastReport.Export.Image
Let’s open our .frx extension file and take a look.

In fact, we can almost update the report from here. The elements we use are structured in XML format, where all the elements and data connections are clearly defined.
Since our report already includes an MSSQL connection, we just need to specify it in the code.

This setup tells FastReport that the data source is ready and that no additional preparation is required. The rest will be absolutely simple.

- Create a report instance and initialize the report object.
- Load the .frx file into the report.
- Prepare the report.
- Export or display the report in the desired format.
That’s all!
Let’s take a look at our report.

3.2. Calling the Simple Report Template with Application Data
You can also generate reports dynamically by using an empty template.
In this case, data can be passed directly from the application using the following method before preparing the report:

Conclusion
Fast and Efficient Reporting with FastReport
FastReport provides a quick and flexible reporting solution suitable for both small projects and enterprise-scale applications. With its user-friendly interface and seamless .NET integration, you can easily manage and generate reports.
By allowing data to be pulled directly from the database or supplied by the application, FastReport improves performance and separates server-side and data-layer operations, resulting in faster and more efficient report generation.
Seamless integration with .NET applications and flexible design make FastReport an ideal choice for any .NET software development company.
To explore FastReport’s advanced features, you can browse its official documentation and work with templates, charts, and more complex reporting techniques.
Appendix: Resources and Documentation
- https://www.fast-report.com/products/fast-report-net
- https://www.nuget.org/packages/FastReport.OpenSource
- https://learn.microsoft.com/tr-tr/dotnet/core/whats-new/dotnet-8/overview
- https://github.com/FastReports/FastReport