English Indonesia Tiếng Việt عربي Español Italiano Türk فارسی Français Português Русский ไทย

Генерация Word документов на C#

Wordize Reporting для .NET — инновационное решение для программной генерации Word документов, которое поможет C#-разработчикам автоматизировать процессы создания отчётов любой сложности. Интегрируйте генерацию отчётов в ваши C# проекты и превращайте файлы JSON, XML в профессиональные Word документы.

Ключевые преимущества Word Report Generation на C#:

  • Быстрая интеграция с бизнес-процессами через .NET API
  • Лёгкая поддержка и обновление шаблонов документов
  • Встроенная интеграция с внешними источниками данных в форматах JSON, XML, CSV
  • Интеграция с любыми другими источниками данных, используя коллекции программных объектов в коде C#
  • Шаблонизация документов с использованием полей-плейсхолдеров вида '<<[field_name]>>' и технологии LINQ Reporting Engine, позволяющей работать с данными в функциональном стиле
  • Детальная настройка процесса генерации Word документов через класс ReportBuilderOptions
  • Возможность работы с потоками ввода/вывода для оптимизации памяти

Сценарии автоматизации для Word документов

  • Программная генерация договоров с данными клиентов
  • Формирование счетов и коммерческих предложений
  • Создание финансовых отчётов по данным бухгалтерии
  • Формирование технических спецификаций на основе проектных данных

Создать Word файл на C#

Чтобы разобраться, как создавать Word файлы на C# с использованием Report Generation API, загрузите ваш документ-шаблон и файл с данными (XML, JSON, CSV) через экранную форму. Укажите имя объекта источника данных, который используется в шаблоне, и запустите программную генерацию Word файла. После запуска демо, скачайте созданный Word документ и убедитесь в корректности подстановки данных из указанного файла-источника.

C#
Выполнить код
Загрузите шаблон документа
Загрузите файл данных
Выберите целевой формат из списка
using Wordize.Reporting;

var dataSource = new JsonDataSource("data.json");
ReportBuilder.BuildReport("Input.docx", "Output.docx", dataSource, "");
using Wordize.Reporting; var dataSource = new JsonDataSource("data.json"); ReportBuilder.BuildReport("Input.docx", "Output.docx", dataSource, ""); using Wordize.Reporting; using Wordize.Saving; var dataSource = new JsonDataSource("data.json"); var imageStreams = ReportBuilder.BuildReportToImages("Input.docx", new ImageSaveOptions(SaveFormat.Docx), new[] { dataSource }, new[] { "" }); foreach (var (stream, page) in imageStreams.Select((s, i) => (s, i))) { using var _ = stream; stream.Position = 0; using var file = File.Create($"Output_{page + 1}.docx"); stream.CopyTo(file); }
using Wordize.Reporting;

var dataSource = new XmlDataSource("data.xml");
ReportBuilder.BuildReport("Input.docx", "Output.docx", dataSource, "");
using Wordize.Reporting; var dataSource = new XmlDataSource("data.xml"); ReportBuilder.BuildReport("Input.docx", "Output.docx", dataSource, ""); using Wordize.Reporting; using Wordize.Saving; var dataSource = new XmlDataSource("data.xml"); var imageStreams = ReportBuilder.BuildReportToImages("Input.docx", new ImageSaveOptions(SaveFormat.Docx), new[] { dataSource }, new[] { "" }); foreach (var (stream, page) in imageStreams.Select((s, i) => (s, i))) { using var _ = stream; stream.Position = 0; using var file = File.Create($"Output_{page + 1}.docx"); stream.CopyTo(file); }
using Wordize.Reporting;

var dataSource = new CsvDataSource("data.csv", new CsvDataLoadOptions() { HasHeaders = true });
ReportBuilder.BuildReport("Input.docx", "Output.docx", dataSource, "");
using Wordize.Reporting; var dataSource = new CsvDataSource("data.csv", new CsvDataLoadOptions() { HasHeaders = true }); ReportBuilder.BuildReport("Input.docx", "Output.docx", dataSource, ""); using Wordize.Reporting; using Wordize.Saving; var dataSource = new CsvDataSource("data.csv", new CsvDataLoadOptions() { HasHeaders = true }); var imageStreams = ReportBuilder.BuildReportToImages("Input.docx", new ImageSaveOptions(SaveFormat.Docx), new[] { dataSource }, new[] { "" }); foreach (var (stream, page) in imageStreams.Select((s, i) => (s, i))) { using var _ = stream; stream.Position = 0; using var file = File.Create($"Output_{page + 1}.docx"); stream.CopyTo(file); }
Выполнить код

Как создать отчет на C#

  1. Установите Wordize для .NET
  2. Добавьте ссылку на библиотеку (импортируйте библиотеку) в ваш проект C#
  3. Укажите шаблон документа и источник данных (JSON, XML, CSV, коллекция объектов в коде)
  4. Создайте документ на основе шаблона и данных

Системные Требования

Наш продукт полностью кроссплатформен и поддерживает все основные реализации .NET:

  • .NET ≥ 5.0
  • .NET Core ≥ 2.0
  • .NET Standard ≥ 2.0
  • .NET Framework ≥ 3.5
  • MonoMac
  • MonoAndroid
  • Xamarin

Поскольку код .NET не зависит от базового оборудования или операционной системы, а зависит только от виртуальной машины, вы можете разрабатывать любое программное обеспечение для Windows, macOS, Android, iOS и Linux. Просто убедитесь, что у вас установлена соответствующая версия .NET Framework, .NET Core, Windows Azure, Mono или Xamarin.

Мы рекомендуем использовать интегрированные среды разработки Microsoft Visual Studio, Xamarin и MonoDevelop для создания приложений C#, F#, VB.NET.

5%