XML — рекомендованный консорциумом W3C самоописательный язык, предназначенный для хранения и передачи данных. Разработчик может изменить формат XML на любой другой более удобный для человека формат, такой как документ PDF или MS Word, в приложении .NET. В этой статье мы обсудим, как преобразовывать данные XML в отчеты PDF и MS Word, используя C# с помощью простых шаблонов.
Ниже обсуждаются следующие темы:
- API .NET для создания отчетов
- Создать отчет в формате PDF из данных XML с помощью C#
- Создать отчет MS Word DOC/DOCX из XML-данных с помощью C#
Создание отчетов .NET API — XML в PDF и WORD
GroupDocs.Assembly for .NET — это API для автоматизации создания отчетов из данных XML с использованием шаблона DOCX или TXT. Кроме того, он поддерживает JSON, CSV и другие источники данных для преобразования данных в отчеты различных форматов файлов.
Вы можете загрузить DLL или MSI установщик из раздела загрузок или установить API в своем приложении .NET через NuGet.
PM> Install-Package GroupDocs.Assembly
Создание отчета в формате PDF из данных XML в C#
3 простых шага приведут вас к преобразованию данных XML в отформатированный отчет в формате PDF.
- Загрузите источник данных XML.
- Определите шаблон в соответствии с загруженными данными XML.
- Наконец, укажите источник данных XML и шаблон для метода создания отчета.
XML-данные
Для преобразования в отчет в формате PDF используется следующий пример данных XML. Он содержит данные менеджеров и их соответствующих клиентов с некоторыми дополнительными подробностями.
<Managers>
<Manager>
<Name>John Smith</Name>
<Contract>
<Client>
<Name>A Company</Name>
</Client>
<Price>1200000</Price>
</Contract>
<Contract>
...
</Contract>
...
</Manager>
<Manager>
<Name>Tony Anderson</Name>
...
</Manager>
...
</Managers>
Шаблон
Определите шаблон в формате TXT или DOCX в соответствии с исходными данными XML. Я использую приведенный ниже шаблон, созданный в соответствии с вышеупомянутыми XML-данными менеджеров. Это заставит генератор отчетов перебирать менеджеров и их соответствующих клиентов. После завершения шаблона вы почти закончили. Вы можете использовать приведенный ниже код для создания отчета.
<<foreach \[in managers\]>>Manager: <<\[Name\]>>
Contracts:
<<foreach \[in Contract\]>>- <<\[Client.Name\]>> ($<<\[Price\]>>)
<</foreach>>
<</foreach>>
Шаги C# для создания отчета PDF из XML
Следующие шаги позволяют автоматизировать создание отчетов в формате PDF из данных XML в соответствии с заданным вами шаблоном.
- Определите файл данных XML, файл текстового шаблона и файлы выходных отчетов в формате PDF.
- Создайте экземпляр XMLDataSoure с файлом данных XML.
- Создайте DataSourceInfo с определенным источником данных XML.
- Вызовите метод AssembleDocument для создания отчета в формате PDF.
Следующий код реализует описанные выше шаги и создает PDF-файл из источника данных XML с помощью C#.
// Создание отчета в формате PDF из данных XML с использованием шаблона TXT в CSharp
// Определите источник данных, шаблон и файлы выходных отчетов.
string xmlDataSource = @"dataPath/Managers.xml";
string templateFilePath = @"templatePath/xml-template.txt";
string reportFilePath = @"reportsPath/xml-to-pdf-report.pdf";
// Загрузить источник данных XML
XmlDataSource dataSource = new XmlDataSource(xmlDataSource);
// Соберите документ для создания PDF
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "managers"));
Создание отчета MS Word из данных XML в С#
Точно так же вы можете создать отчет в формате MS Word DOC/DOCX, используя те же XML-данные. Код не будет отличаться от того, что мы обсуждали выше, за исключением того, что вы должны изменить имя выходного файла.
- Загрузите файл данных XML.
- Определение шаблона в формате TXT или DOCX.
- Установите формат документа выходного отчета как DOCX.
- Укажите файл данных XML, шаблон и путь к выходному файлу для DocumentAssembler для преобразования XML в DOCX.
Следующий код преобразует XML и создает файл DOCX с использованием определенного шаблона с помощью C#.
// Создание отчета MS Word из данных XML с использованием текстового шаблона в CSharp
// Определите источник данных, шаблон и файлы выходных отчетов.
string xmlDataSource = @"dataPath/Managers.xml";
string templateFilePath = @"templatePath/xml-template.txt";
string reportFilePath = @"reportsPath/xml-to-word-report.docx";
// Загрузить источник данных XML
XmlDataSource dataSource = new XmlDataSource(xmlDataSource);
// Соберите документ для создания отчета Word
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "managers"));
Получите бесплатную лицензию API
Вы можете получить бесплатную временную лицензию, чтобы использовать API без ограничений пробной версии.
Вывод
Подводя итог, вы научились преобразовывать данные XML в формат PDF в виде отчета, используя C# с приложением .NET. Дополнительно мы обсудили генерацию отчета в формате DOC/DOCX из того же XML с использованием шаблона. После прочтения этой серии сообщений о создании отчетов; Создавайте отчеты в формате PDF и MS Word из JSON, CSV, XML, вы можете разработать собственное приложение для создания отчетов .NET.
Чтобы узнать больше о GroupDocs.Assembly, параметрах и примерах, посетите документацию и репозиторий GitHub. Если у вас возникнут дополнительные вопросы, свяжитесь с нами через форум.