Автоматизирането на създаването на персонализирани документи – като доклади, писма и фактури – може значително да подобри ефективността на работния поток. С C# Mail Merge, задвижван от Aspose.Words за .NET можете да постигнете това безпроблемно. Този ръководство ще ви преминава през използването на Aspose-Word Mail merge Plugin за ефективно и скалиращо генериране на документи в рамките на вашите приложения.NET – без необходимостта от MS Word или Office Interop.
съдържание
- Mail Merge?
- Източници на данни за Mail Merge
- Изготвяне на шаблони за поща
- Започнете с Aspose.Words за .NET
- Извършване на Mail Merg with Sample Data
- Поща се слива с XML данни
- Използвайте форматиране на полето
- Електронната поща се слива с регионите
- Пощенски съобщения
- заключение
Какво е Mail Merge?
Mail Merge е мощна методология за динамично генериране на документи, популяризирайки шаблони с данни от различни източници. Aspose.Words ви позволява да автоматизирате задачи като:
- Създаване на персонализирани писма и фактури.
- Създаване на масивни отчети с помощта на структурирани формати като XML, JSON или бази данни, което позволява динамично генериране на доклади с C# и Aspose.Words.
Mail Merge
Aspose.Words поддържа различни източници на данни, включително:
- Objects: Популярни шаблони, използващи класови инстанции.
- XML: Изтегляне на структурирани данни за динамични полета.
- JSON: Лесно се интегрира с модерните АПИ.
- CSV: Изтегляне на таблични данни за генериране на масови документи.
- DataTable / DataSet: Използвайте ADO.NET за интегриране на база данни.
Mail Merge
Шаблонът за споделяне на пощата е документът, съдържащ полета, които ще бъдат популяризирани с данни от посочения източник на данни по време на изпълнението. Шаблона може да бъде в DOC или DOCX формат и не изисква специфичен стил.
- Отворете документа си или създайте нов в MS Word.
- Поставете курсора там, където искате да въведете поле за сливане.
- От менюто Включете, изберете опцията Поле.
- От списъка Имена на полето изберете MergeField.
- Напишете името на полето за сливане в кутията Име на областта и щракнете върху ОК.
- Спасяване на документа.
Следващата снимка показва, че Шаблони за проби Документът .

.NET Mail Merge API - Инсталиране
Можете да инсталирате Aspose.Words за .NET чрез различни методи:
Mail Merge в Word Документ с C#
След като шаблонът ви е готов, можете да изпълните пощенското сливане, за да генерирате документи. Ето стъпките, които трябва да направите за извършване на съобщението на подготовката на шаблона:
- Изтеглете шаблона на документа, като използвате Документ в клас.
- Създайте необходимите възможности за споделяне на пощата, като например Документ.MailMerge.TrimWhitespaces.
- Извършване на съобщението с помощта на MailMerge.Execute() Методът преминава източника на данни като параметър.
- Съхраняване на генерирания документ с помощта на Save(String) Методът .
Ето един код, който показва как да автоматизирате генерирането на отчети в C# с помощта на редица стойности:
Word документ след съвместна поща

Mail Merge с помощта на XML източник на данни в 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#.
По-долу е съобщението за споделяне Храмът Тя ще бъде популяризирана с данни от XML файла.

Тази снимка представлява първата страница на получения Word документ, получен след изпълнение на пощата сливане.

custom-formatting-of-merge-fields}
Aspose.Words за .NET осигурява по-добър контрол над процеса на сливане на пощата. MailMerge.FieldМергингCallback собствеността ви позволява да конфигурирате пощенско поведение на сливане, тъй като всяко поле е срещан. IFieldMergingCallback.FieldMerging и IFieldMergingCallback.ImageFieldMerging Методите позволяват персонализиране на операцията по пощенско сливане.
По-долу е шаблон на код, който показва как да се приложи персонализирано форматиране по време на съединението по електронната поща чрез шаблона за пример:
Следващото прилага класа HandleMergeFieldAlternatingRows.
C#
В някои случаи може да се наложи да популяризирате и повтаряте определена област в документа на Word. За такива сценарии използвайте пощенско сливане с региони.За да създадете регион, посочете както началото, така и края на регионите; след това съединението по електронната поща ще повтори този регион за всеки запис в източника на данни. Примерът на шаблона по-долу съдържа два региона — Orders и OrderDetails — като използвате полетата „TableStart:Orders“, «TablesEnd:OrderDatails» и «Таблица:Tabellend:orderDtails».

Ето един код проб, който изпълнява пощенски сливания въз основа на региони за горепосочените Храмът.
Следните методи илюстрират как да се четат данните от база данни.
Изпратено имейл се съчетава
Често данните от източника са структурирани в относителни формати. Например, “Задания” могат да имат един-на-много отношения с “Детайли за поръчки”, които съхраняват записи на елементи в рамките на поръчка. Формат на фактурата Това се отнася добре до този сценарий.

Следващ е 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 документ след съвместна поща
По-долу е първата страница на получения Word документ, получен след изпълнението на сливането на изпратената поща.

заключение
Aspose.Words за .NET е цялостна API за споделяне на съобщения, която осигурява както стандартни, така и разширени функции, подходящи за приложения на .NET. С само няколко реда на код можете да разработите прости или сложни отчети от различни източници на данни безпроблемно. Документация. За да започнете с Aspose.Words за .NET, разгледайте наличните Ръководство на разработчиците Пробният код на GitHub. Aspose Plugin също така предлага усъвършенствани функционалности за генериране на отчети.
Опитайте Aspose.Words за .NET за безплатно
Можете да получите безплатна временна лиценза, за да опитате Aspose.Words за .NET без ограничения. Получете временната си лиценза сега.
More in this category
- Конвертирайте Word DOC/DOCX в PDF в C# .NET Aspose.Words' Document Converter Plugin
- Word документи (.NET, C#) и четене на баркод от Word (.NET)
- Извличане на изображения от Word документи в C# автоматична обработка на изображения
- Намиране и замяна на текст в Word документи с помощта на C# автоматично редактиране на Word
- Създаване на персонализирани Word документи с помощта на C# .NET Aspose.Words Mail Merge Plugin