L’automatització de la creació de documents personalitzats, com ara informes, lletres i factures, pot millorar significativament l’eficiència en el seu flux de treball. Amb C# Mail Merge alimentat per Aspose.Words per a .NET, pots aconseguir-ho sense cap mena de seguretat. Aquesta guia us passarà utilitzant el Plugin d’Assumpció del correu de Word** per realitzar una generació eficaç i escalable de document dins de les seves aplicacions .Net - sense necessitat de MS Word o Office Interop.
Contingut
- Què és Mail Merge?
- Fonts de dades per a Mail Merge
- Preparació de Mail Merge Templates
- Començar amb Aspose.Words per a .NET
- Performan el correu que s’uneix amb dades de mostra
- El correu es barreja amb les dades XML
- Configuració de camp de combinació
- Correspondència amb les regions
- El telèfon Nested Mail
- Conclusió
Què és Mail Merge}
Mail Merge és una metodologia poderosa per a la generació dinàmica de documents populant temples amb dades de diverses fonts. amb Aspose.Words, es poden automatitzar tasques com ara:
- Generar cartes i factures personalitzades.
- Crear informes en massa utilitzant formats estructurats com XML, JSON, o bases de dades, permetent la generació d’informes dinàmica amb C# i Aspose.Words**.
Fonts de dades per a Mail Merge
Aspose.Words dóna suport a una varietat de fonts de dades, incloent:
- Objectes: Models populars utilitzant instàncies de classe.
- XML: Carregar dades estructurades per a camps dinàmics.
- JSON: fàcilment integrat amb les APIs modernes.
- CSV: Lliurament de dades de taula per a la generació de documents en massa.
- DataTable / DataSet: Utilitza ADO.NET per a la integració de bases de dades.
Preparació de temples per a Mail Merge
El model de fusió de correu electrònic és el document que conté camps de fusió que es popularan amb dades de la seva font de dades especificada durant l’execució. El model pot ser en format DOC o DOCX i no requereix un estil específic:
- Obrir el document o crear un nou en MS Word.
- Posar el cursor on voleu inserir un camp de fusi.
- Des del menú Insert, seleccioneu l’opció Fili.
- Des de la llista Noms de camp, seleccioneu MergeField.
- Especifica un nom per al camp de fusió a la casella Nom de camp i feu clic a OK.
- Salvem el document.
The following screenshot illustrates a Models de mostra document.

.NET Mail Merge API - Instal·lació
Podeu instal·lar Aspose.Words per .NET a través de diferents mètodes:
Performan Mail Merge en el Document de Word utilitzant C#
Una vegada que el teu model està preparat, pots executar la fusió de correu per generar documents.Aquí són els passos per realitzar la fusió de correu en el teu model preparat:
- Load the template document using the Document class.
- Set required mail merge options, such as Documentació.MailMerge.TrimWhitespaces.
- Execute the mail merge using the Document.MailMerge.Execuci() method, passing the data source as a parameter.
- Save the generated document using the Documentació.Save(String) method.
Aquí teniu una mostra de codi que demostra com generar informes automàtics en C# amb una sèrie de valors**:
Document de paraula després de la mescla

Performan Mail Merge utilitzant XML Data Source en C#
XML files are commonly utilized for storing and transferring data. Aspose.Words for .NET supports XML as a data source for mail merge operations. Simply read the XML into a Informació object and execute the mail merge. Below is a sample XML file for our use case.
<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>
La mostra de codi següent recupera dades d’una font de dades XML i executa la fusió de correu utilitzant C#.
Below is the mail merge Temple that will be populated with data from the XML file.

Aquesta imatge representa la primera pàgina del document Word resultant obtingut després d’executar la fusió de correu.

Formatatge personalitzat dels camps de barreja
Aspose.Words for .NET provides enhanced control over the mail merge process. The MailMerge.FieldMergingCallback property allows you to configure mail merge behavior as each merge field is encountered. Implementing the IfieldMergingCallback.FieldMerging and IFieldMergingCallback.ImageFieldMerging methods enables customization of the mail merge operation.
A continuació hi ha una mostra de codi que demostra com aplicar la formatació personalitzada durant la fusió de correu a través de l’exemple proporcionat:
El següent implementa la classe HandleMergeFieldAlternatingRows.
Mail Merge amb Regions utilitzant C#
En alguns casos, pot ser que necessiteu localitzar i repetir una regió específica dins del document de Word. Per a aquests escenaris, utilitzeu la fusió de correu amb regions. Per crear una regió, especifiqueu tant el començament com el final de la regió; la fusió de correu repetirà llavors aquesta regió per a cada registre en la font de dades. L’exemple de model a continuació conté dues regions - Ordres i Detalls d’ordre - utilitzant els camps de fusió «TableStart:Ordres», «TableEnd:Ordres», «TableStart:OrdresDetails» i «TableEnd:OrdresDetails».

Here is a code sample that executes mail merge based on regions for the previously mentioned Temple.
Els següents mètodes il·lustren com llegir dades d’una base de dades.
Nosted Mail Merge
Often, data from the source is structured in relational formats. For example, “Orders” may have a one-to-many relationship with “OrderDetails,” which keeps records of items within an order. In such scenarios, utilize nested mail merge. Below is a sample Templat de facturació that suits this scenario well.

El següent és una font de dades XML per a l’exemple de la nostra fusió de correu Nested.
<?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>
El fitxer OrderSchema.xsd corresponent per a aquest XML és:
<?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>
La mostra de codi següent executa la fusió de correu nestada utilitzant C#.
Document de paraula després de la mescla
A continuació es troba la primera pàgina del document Word resultant obtingut després d’executar la fusió de correu.

Conclusió
Aspose.Words for .NET is a comprehensive mail merge API that provides both standard and extended features suitable for .NET applications. With just a few lines of code, you can develop simple or complex reports from diverse data sources seamlessly. For guidance on the .NET automated report generation best practices, consult the Documentació. To begin with Aspose.Words for .NET, explore the available Guia del desenvolupador and sample code on El GitHubEl Plugin Aspose també ofereix funcionalitats avançades per a la generació de informes.
Prova Aspose.Words per a .NET per a lliure
You can obtain a free temporary license to try Aspose.Words for .NET without limitations. Obtenir la seva llicència temporal ara.
More in this category
- Convertir Word DOC/DOCX a PDF en C# .NET Aspose.Words' Document Converter Plugin
- Generar codi de barra en els documents de Word (.NET, C#) i llegir codi de barra de Word (.NET)
- Extracció d'imatges de Documents de Word en C# Processament d'imatges automàtics
- Troba i reemplaça el text en els documents de Word utilitzant l'editació automàtica de C#
- Crear documents de paraula personalitzats utilitzant C# .NET Aspose.Words Mail Merge Plugin