Создание PDF файла при нажатии на кнопку в браузере

11.04.2013

При совместном использовании FastReport .Net с фреймворком ASP.Net MVC существует возможность простого формирования файла в нужном выходном формате при нажатии на кнопку формы.

Добавляем следующий код во View:

 @using (Html.BeginForm("GetFile", "Home"))
 {
         <input id="pdf" type="submit" value="Export to PDF" />
 }

GetFile - имя обработчика результатов сабмита формы в контроллере, Home - имя контроллера, в данном случае файл контроллера HomeController.cs

Добавляем пространство имен в контроллере:

using FastReport.Export.Pdf;

Добавляем нужный метод в контроллер:

        public FileResult GetFile()
        {
            WebReport webReport = new WebReport();

            // привязка данных
            System.Data.DataSet dataSet = new System.Data.DataSet();
            dataSet.ReadXml(report_path + "nwind.xml");
            webReport.Report.RegisterData(dataSet, "NorthWind");
           
            // загружаем нужный файл отчета
            webReport.ReportFile = this.Server.MapPath("~/App_Data/report.frx");

            // строим отчет
            webReport.Report.Prepare();

            // сохраняем в нужном формате в поток
            Stream stream = new MemoryStream();
            webReport.Report.Export(new PDFExport(), stream);
            stream.Position = 0;

            // возвращаем результат в браузер
            return File(stream, "application/zip", "report.pdf");
        }

Привязка данных и загрузка файла отчета показаны для примера. Привязка к данным может быть выполнена непосредственно в самом файле отчета из дизайнера.

Если вам необходим другой формат, то нужно добавить соответствующий uses и вызвать нужный конструктор в строке экспорта.

Например для формата Excel 2007 нужны строки:
using FastReport.Export.OoXML;
...
webReport.Report.Export(new Excel2007Export(), stream);
...
return File(stream, "application/xlsx", "report.xlsx");

.NET .NET FastReport FastReport MVC MVC Экспорты Экспорты
21 апреля 2026

Использование водяных знаков в FastReport VCL

В статье подробно рассмотрели функционал добавления водяных знаков в FastReport VCL — как через визуальный интерфейс, так и программно, с помощью кода на Delphi и в скриптах отчётов.
20 апреля 2026

Подробный обзор возможностей библиотеки FastGrid

Обзор библиотеки FastGrid для VCL и Lazarus: визуализация, редактирование и структурирование данных. Сортировка, фильтрация, группировка, удобные редакторы данных — всё в одной статье!
17 апреля 2026

Новая система валидации отчетов в FastReport VCL

В этой статье мы расскажем, как работает проверка отчетов в FastReport VCL, как её настроить, как писать собственные правила на примерах и поделимся интересными нововведениями.

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