Как подключаться к СУБД MS SQL из отчетов в .NET Core

29.05.2018

Одной из наиболее распространенных СУБД с которой работают .Net разработчики является MS SQL Server. В этой статье мы рассмотрим, как в своем .NET Core приложении использовать отчеты FastReport .NET с подключением к источнику данных MS SQL.

Для начала, необходимо создать отчет с подключением к MS SQL в дизайнере отчетов, который поставляется вместе с FastReport .NET.

Затем, в ваш .NET Core проект нужно добавить библиотеки FastReport. Это можно сделать в менеджере пакетов Nuget. Нам необходимо подключить следующие пакеты:

  • FastReport.Core – библиотека генератора отчетов адаптированная под платформу .NET Core;
  • FastReport.Data.MsSql –коннектор к базе данных MSSQL;
  • FastReport.Web – объект веб отчета, который позволяет выводить отчеты в браузере.

Затем переходим к контроллеру, в котором будем работать с отчетом. В моем примере это HomeController. Необходимо добавить ссылки на следующие пространства имен:

1
2
3
using FastReport.Web;
using FastReport.Data;
using FastReport.Utils;

И добавляем код создания и загрузки отчета в нужный метод. В моем случае это Index:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
public IActionResult Index()
 {
 RegisteredObjects.AddConnection(typeof(MsSqlDataConnection));
 WebReport webReport = new WebReport();
 
 MsSqlDataConnection sqlConnection = new MsSqlDataConnection();
 sqlConnection.ConnectionString = "Data Source = localhost; AttachDbFilename =; Initial Catalog = testdb; Integrated Security = True; Persist Security Info = False; User ID =; Password = ";
 sqlConnection.CreateAllTables();
 webReport.Report.Dictionary.Connections.Add(sqlConnection);
 webReport.Report.Load($@"Reports/CoreMSSQL.frx");
 
 ViewBag.WebReport = webReport;
 return View();
 }

В первой строке мы инициализируем подключение к БД MsSqlDataConnection. Затем – создаем объект веб отчета. Получаем экземпляр объекта MsSqlDataConnection и задаем в нем строку подключения к БД. После чего отдаем команду – построить все таблицы. И добавляем подключение в отчет. Остается лишь загрузить шаблон отчета в объект веб отчет и передать его представлению.

Если отчет имеет переменную, то мы можем передать в нее значение из приложения таким способом:

1
2
String value = "Products!";
 webReport.Report.SetParameterValue("Param", value);

В представление Index.chtml (в зависимости от контроллера), мы добавляем строчку:

1
@await ViewBag.WebReport.Render();

Которая отобразит объект веб отчета.

Приложение практически готово, нужно лишь добавить еще одну строку кода в файл Startup.cs, в метод Configure:

:

1
app.UseFastReport();

Теперь можно запустить приложение и проверить работу нашего отчета:

Как видите, применение коннектора, который мы установили из Nuget, существенно облегчило нам жизнь. Мы просто инициализировали подключение к БД. Если бы мы не использовали MsSqlConnection, то пришлось бы создавать подключение, DataAdapter, DataSet и регистрировать источник данных в отчете.

.NET FastReport .NET FastReport
16 октября 2026

Новые возможности .NET 11: обзор C# 15, EF Core 11, ASP.NET Core и производительности

Обзор .NET 11: C# 15, union-типы, новая модель безопасности памяти, Windows Forms, EF Core 11, ASP.NET Core и Blazor, ускорение Runtime и NativeAOT.
12 октября 2026

Экспорт отчёта в XML из Preview в FastReport .NET

Узнайте, как сохранить отчёт в формате XML в FastReport .NET: экспорт из Preview без кода и программный экспорт через XMLExport с настройкой параметров.
12 октября 2026

GS1 DataBar Expanded Stacked: особенности и настройка в FastReport .NET

GS1 DataBar Expanded Stacked — многострочный штрихкод для товаров: кодирует GTIN, срок годности, вес, номер партии. Узнайте, как работает символика и настройка Segments в FastReport .NET.

Не является публичной офертой
© 1998-2026 ООО «Быстрые отчеты»