Автоматизация создания персонализированных документов, таких как отчеты, письма и счета, может существенно повысить эффективность вашего рабочего потока.С помощью C# Mail Merge, поддерживаемого Aspose.Words для .NET, вы можете достичь этого беспрепятственно.Этот руководство будет проходить через вас с использованием плагина Аспоз.Ворд Mail Merg Plugin для эффективного и масштабирующего производства документов в пределах ваших приложений .NET — без необходимости MS Word или Office Interop.

Контент

Что такое Mail Merge?

Mail Merge является мощной методологией для динамического генерирования документов, популяризируя шаблоны с данными из различных источников. Aspose.Words позволяет автоматизировать такие задачи, как:

  • Создание персонализированных букв и счетов.
  • Создание множественных отчетов с использованием структурированных форматов, таких как XML, JSON или базы данных, позволяющих динамично генерировать отчеты с помощью C# и Aspose.Words.

Источники данных для Mail Merge

Aspose.Words поддерживает различные источники данных, в том числе:

  • Объекты: Популярные шаблоны с использованием классовых примеров.
  • XML: Загрузите структурированные данные для динамических полей.
  • JSON: Легко интегрируется с современными АПИ.
  • CSV: Передача табличных данных для массового генерирования документов.
  • DataTable/DataSet: Используйте ADO.NET для интеграции данных.

Подготовка шаблона для Mail Merge

Шаблон посылки электронной почты является документом, содержащим поля посылки, которые будут популяризованы с данными из указанного источника данных во время выполнения. Шаблон может быть в формате DOC или DOCX и не требует конкретного стиля.

  • Откройте документ или создайте новый в MS Word.
  • Поставьте курсор, где вы хотите ввести поле сливания.
  • Из меню Введите, выберите опцию Поле.
  • Из списка Имена полей выберите MergeField.
  • Укажите имя для поле слияния в поле Название поля и нажмите ОК.
  • Сохраните документ.

Следующая фотография иллюстрирует Шаблон шаблонов Документ .

Mail Merge Template

.NET Mail Merge API - установка

Вы можете установить Aspose.Words для .NET по различным методам:

Выполните почту в Word Document с помощью C#

Как только ваш шаблон готов, вы можете выполнить почтовое сливание, чтобы генерировать документы. Вот шаги для выполнения почтового сливания на подготовленном шаблоне:

Вот шаблон кода, демонстрирующий, как автоматизировать генерирование отчетов в C# с помощью ряда значений:

Word Document после слияния почты

Execute Mail Merge in C#

Выполнение Mail Merge с использованием XML Data Source в C#

XML-файлы обычно используются для хранения и передачи данных. Aspose.Words для .NET поддерживает XML как источник данных для операций по слиянию почты. DataSet Объект и выполнение почтового слияния. Ниже представлен образцовый XML-файл для нашего использования.

<customers>
    <customer Name="John Ben Jan" ID="1" Domain="History" City="Boston"/>
    <customer Name="Lisa Lane" ID="2" Domain="Chemistry" City="LA"/>
    <customer Name="Dagomir Zits" ID="3" Domain="Heraldry" City="Milwaukee"/>
    <customer Name="Sara Careira Santy" ID="4" Domain="IT" City="Miami"/>
</customers>

Следующий шаблон кода получает данные из источника данных XML и выполняет сообщение по почте с использованием C#.

Ниже находится почта Fusion Храм Это будет популяризовано с данными из XML-файла.

Mail Merge Template for XML

Это изображение представляет собой первую страницу полученного Word-документа, полученного после выполнения почтового слияния.

Execute Mail Merge with XML in C#

Форматирование полей счета

Aspose.Words для .NET обеспечивает усовершенствованный контроль над процессом слияния почты. MailMerge.FieldМергингCallback свойство позволяет конфигурировать почтовое поведение сливания, так как каждое поле слияния встречается. ИФИЛДМЕРГИНГCallback.FieldMerging и IFieldMergingCallback.ImageFieldMerging Методы позволяют персонализировать операцию по слиянию почты.

Ниже представлен образцовый код, демонстрирующий, как применять персонализированное форматирование во время слияния почты через предоставленный образцовый шаблон:

Следующая реализует класс HandleMergeFieldAlternatingRows.

Mail Merge with Regions с помощью C#

В некоторых случаях вам может понадобиться популяризировать и повторять определенный регион в документе Word. Для таких сценариев используйте почтовое сливание с регионами. Чтобы создать регион, укажите как начало, так и конец региона; почта сливания затем повторит этот регион для каждого записи в источнике данных. Пример шаблона ниже содержит два региона — Порядки и Детали Порядка — с использованием полевых слива «ТаблицаСтарт:Показания», «TableStart:OrderDetails», и «ТемницаСтарый:Детали Показаний».

Mail Merge Template with Regions

Вот шаблон кода, который выполняет почтовые сливания на основе регионов для вышеуказанных Храм.

Следующие методы иллюстрируют, как читать данные из базы данных.

Пожалуйста, обращайтесь к нам по ссылке.

Часто данные из источника структурируются в относительных форматах. К примеру, Заказания могут иметь одно-по-многие отношения с Детали заказа, которые сохраняют записи предметов в пределах порядка. В таких сценариях используйте гнойную почту сливать. Шаблоны счета Это хорошо подходит для этого сценария.

Mail Merge Template with Regions

Следующий является источником данных XML для нашего примера слияния почты.

<?xml version="1.0" encoding ="utf-8"?>
<Orders xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="OrdersSchema.xsd">
    <Order>
        <Number>23</Number>
        <Address>Nelson Street</Address>
        <Suburb>Howick</Suburb>
        <City>Auckland</City>
        <Phonenumber>543 1234</Phonenumber>
        <Date>03/01/2010</Date>
        <Total>14.00</Total>
        <Item>
            <Name>BBQ Chicken Pizza</Name>
            <Price>6.00</Price>
            <Quantity>1</Quantity>
            <ItemTotal>6.00</ItemTotal>
        </Item>
        <Item>
            <Name>1.5 Litre Coke</Name>
            <Price>4.00</Price>
            <Quantity>2</Quantity>
            <ItemTotal>8.00</ItemTotal>
        </Item>
    </Order>
    <Order>
        <Number>10</Number>
        <Address>Parkville Avenue</Address>
        <Suburb>Pakuranga</Suburb>
        <City>Auckland</City>
        <Phonenumber>548 7342</Phonenumber>
        <Date>05/03/2010</Date>
        <Total>6.00</Total>
        <Item>
            <Name>Hawaiian Pizza</Name>
            <Price>4.00</Price>
            <Quantity>1</Quantity>
            <ItemTotal>4.00</ItemTotal>
        </Item>
        <Item>
            <Name>Fries</Name>
            <Price>1.00</Price>
            <Quantity>2</Quantity>
            <ItemTotal>2.00</ItemTotal>
        </Item>
    </Order>
</Orders>

Соответствующий файл OrderSchema.xsd для этого XML является:

<?xml version="1.0" encoding ="utf-8"?>
<xs:schema id="OrdersSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="Orders">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="Order">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="Number"/>
                            <xs:element name="Address"/>
                            <xs:element name="Suburb"/>
                            <xs:element name="City"/>
                            <xs:element name="Phonenumber"/>
                            <xs:element name="Date"/>
                            <xs:element name="Total"/>
                            <xs:element name="Item">
                                <xs:complexType>
                                    <xs:sequence>
                                        <xs:element name="Name"/>
                                        <xs:element name="Price"/>
                                        <xs:element name="Quantity"/>
                                        <xs:element name="ItemTotal"/>
                                    </xs:sequence>
                                </xs:complexType>
                            </xs:element>
                        </xs:sequence>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

Следующий шаблон кода выполняет сливленную почту с помощью C#.

Word Document после слияния почты

Ниже находится первая страница полученного Word-документа, полученного после выполнения посыщенного почтового сливания.

Word Document after Mail Merge

Заключение

Aspose.Words для .NET - это всесторонний API по слиянию почты, который обеспечивает как стандартные, так и расширенные функции, подходящие для приложений .NET. С несколькими линиями кода вы можете разработать простые или сложные отчеты из различных источников данных беспрепятственно. ДокументацияДля начала с Aspose.Words для .NET, изучайте доступные Руководство разработчика Пробный код на GitHub. Aspose Plugin также предлагает передовые функции для генерации отчетов.

Попробуйте Aspose.Words для .NET бесплатно

Вы можете получить бесплатную временную лицензию, чтобы попробовать Aspose.Words для .NET без ограничений. Получите свою временную лицензию сейчас.

More in this category