Как создать визитки из приложения ASP .NET Core

31.05.2020

Фреймворк ASP.NET Core - это кроссплатформенное решение для создания веб приложений. Это означает, что разработку вы можете вести в различных операционных системах, и созданные приложения также будут работать в них. Это и другие преимущества сделали ASP .NET Core очень популярным. Многие десктоп разработчики, которые писали на языке программирования C# занялись веб программированием благодаря новому фреймворку. Да, ранее Microsoft уже продвигала веб фреймворк ASP.NET на основе .NET Framework. Но это платный продукт с закрытыми исходными кодами, предназначенный исключительно для работы под Windows, и доступен не каждому, в отличии от .NET Core.

Ввиду популярности ASP.NET Core многие люди создают совсем не тривиальные веб приложения. Например, вам может понадобиться выводить на печать визитки. Да-да, те самые визитные карточки, которые нужны для обмена контактными данным между деловыми людьми.

Не стоить преуменьшать роль визитных карточек в современной жизни. Даже тотальная электронизация не смогла вытеснить маленькие картонные карточки. Теперь они все больше походят на рекламу. Дорогой дизайн и красивая фактурная бумага призваны произвести впечатление на человека. А это - залог успеха в бизнесе.

В разных странах устоялись собственные размеры визиток, например:

  • Австралия – 90×55 мм;
  • Россия - 90×50 мм;
  • США – 88,9×50,8 мм (3,2”×2”);
  • Китай - 90×54 мм;
  • Франция - 85×55 мм;
  • Германия - 85×55 мм;
  • Япония - 91×55 мм.

Чтобы сформировать визитки из пользовательского приложения ASP.NET Core, воспользуемся генератором отчетов FastReport.NET. В дизайнере отчетов создать шаблон визитки быстрее, чем в графическом редакторе.

Приветственное окно дизайнера отчетов предлагает нам создать отчет с помощью двух мастеров: Standard Report и Label:

FastReport .NET Designer Welcome Form

Выбираем мастер Label:

 Label wizard. Business card template selected.

В мастере создания этикетки мы можем выбрать производителя. Для каждого производителя доступен набор шаблонов документов определенных размеров, таких как: письмо, этикетка, ценник, бейдж, визитка и др.

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

Business card report template is ready

Чтобы сделать рамку используйте текстовый объект и задайте ему границы с прерывистой линией. На текущий момент на странице размера А4 у нас будет только одна визитка. Чтобы размножить ее настроим свойство RowCount бэнда Данные:

 DataBand properties

На этом создание шаблона отчета завершено, сохраним его. Например, в каталоге wwwroot создайте папку App_Data и сохраните отчет туда.

Добавим в проект библиотеки FastReport.NET с помощью Nuget:

FastReport .NET packages you needed

В Startup.cs подключим библиотеки FastReport:

1
2
3
4
5
6
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
 {

app.UseFastReport();

}

Теперь можно добавить в контроллер формирование отчета:

1
2
3
4
5
6
private IHostingEnvironment _env;
 
 public HomeController(IHostingEnvironment env)
 {
 _env = env;
 }

Инжектируем в класс интерфейс окружения для получения пути к каталогу wwwroot, в который мы сохранили отчет. В нужном методе создаем объект отчета, загружаем в него данные и шаблон отчета:           

1
2
3
4
5
6
7
8
9
 public IActionResult Index()
 {
 var rootpath = _env.WebRootPath;
 var report = new WebReport();
 report.Report.Load(rootpath + "/App_Data/Business Card.frx");
 report.Report.RegisterData(data); 
 ViewBag.WebReport = report;
 return View();
 }

А в представление Index добавим вывод отчета:

1
@await ViewBag.WebReport.Render()

Теперь, запустим приложение:

Business card report showed

Из верхнего меню объекта отчета можно распечатать отчет, или экспортировать в один из форматов:

 Report export options

Теперь вы можете выводить визитки на просмотр, печатать их и экспортировать в любой из популярных форматов документов! И заметьте, как мало времени у вас заняла реализация этого функционала!

4 октября 2023

Как из приложения ASP.NET Core сформировать отчет с использованием FastReport.Core.Skia

Рассказываем как сформировать отчет на Windows и Linux с использованием FastReport.Core.Skia и приватного NuGet сервера.
22 марта 2023

Создание PDF отчета в JetBrains Rider (C#) на «Альт Рабочая станция К» 10

В этой статье мы взглянем на платформу .NET в «Альт Рабочая станция К» 10 и создадим отчет, который можно экспортировать в PDF.
14 февраля 2023

Как настроить веб-сервер Apache2 для FastReport .NET

Запускаем веб-сервер Apache2 в операционной системе Linux для FastReport .NET и .NET 5 с помощью нескольких простых команд.