Die Automatisierung der Erstellung personalisierter Dokumente – wie Berichte, Briefe und Rechnungen – kann die Effizienz Ihres Arbeitsflusses erheblich verbessern. Mit C# Mail Merge mit Aspose.Words für .NET können Sie dies unermüdlich erreichen. Dieser Leitfaden wird Sie durch die Aspose-Word-Mail-Merge Plugin verwenden, um eine effiziente und skalierbare Dokumenterzeugung innerhalb Ihrer .Net-Anwendungen durchzuführen – ohne die Notwendigkeit von MS Word oder Office Interop.
Inhalte
- Was ist Mail Merge?
- Datenquellen für Mail Merge
- Vorbereitung von Mail Menge-Templates
- Beginn mit Aspose.Words für .NET
- Perform Mail Mischen mit Sample-Daten
- Mail vereint mit XML-Daten
- Custom Merge Field Formatierung
- Mail verbindet sich mit Regionen
- Nested Mail vereint
- Schlussfolgerungen
Was ist Mail Merge}
Mail Merge ist eine leistungsstarke Methodik für die dynamische Erzeugung von Dokumenten durch die Populierung von Vorlagen mit Daten aus verschiedenen Quellen. mit Aspose.Words können Sie Aufgaben wie:
- Personalisierte Briefe und Rechnungen erzeugen.
- Massenberichte mit strukturierten Formaten wie XML, JSON oder Datenbanken erstellen, die die dynamische Berichtsgeneration mit C# und Aspose.Words ermöglichen.
Datenquellen für Mail Merge
Aspose.Words unterstützt eine Vielzahl von Datenquellen, darunter:
- Objekte: Populäre Vorlagen mit Klasseninstanz.
- XML: Laden Sie strukturierte Daten für dynamische Felder.
- JSON: Einfach mit modernen APIs integriert werden.
- CSV: Tischdaten für die Menge-Dokumenterzeugung herauszugeben.
- DataTable/DataSet: Verwenden Sie ADO.NET für die Datenbankintegration.
Vorbereitung des Templates für Mail Merge
Das E-Mail-Fusion-Template ist das Dokument, das Fusionfelder enthält, die während der Ausführung mit Daten aus Ihrer angegebenen Datenquelle populiert werden. Das Template kann in DOC oder DOCX-Format sein und erfordert keinen spezifischen Stil. Folgen Sie diesen Schritten, um eine E-Mail-Fusion-Template zu erstellen:
- ffnen Sie Ihr Dokument oder erstellen Sie einen neuen in MS Word.
- Legen Sie den Kursor dort, wo Sie ein Fusionfeld einfügen möchten.
- Aus dem Insert Menü wählen Sie die Feld Option aus.
- Aus der Liste Feldnamen wählen Sie MergeField aus.
- Angeben Sie ein Name für das Fusionfeld im Feld Feld Name und klicken Sie auf OK.
- Speichern Sie das Dokument.
Das folgende Bildschirm zeigt eine Proben Template Das Dokument.

.NET Mail Merge API - Installation
Sie können Aspose.Words für .NET über verschiedene Methoden installieren:
Perform Mail Merge in Word-Dokument mit C#
Sobald Ihr Template fertig ist, können Sie die E-Mail-Fusion ausführen, um Dokumente zu generieren. Hier sind die Schritte, um die E-Mail-Fusion auf Ihrem vorbereiteten Template ausführen:
- Laden Sie das Template-Dokument mit der Dokumentation und Klasse.
- Set die erforderlichen Mail-Fusion-Optionen, wie Dokument.MailMerge.TrimWhitSpaces.
- Durchführen Sie die E-Mail-Fusion mit der Dokumentation.MailMerge.Execute() Methode, die die Datenquelle als Parameter übertragen.
- Speichern Sie das generierte Dokument mit der Dokument.Save (String) auf der Seite) Die Methode .
Hier ist ein Code-Sample, das zeigt, wie man Automat Report-Generation in C# mit einer Reihe von Werte durchführen kann:
Word-Dokument nach E-Mail Mischung

Perform Mail Merge mit XML Data Source in C#
XML-Dateien werden in der Regel zur Speicherung und Übertragung von Daten verwendet. Aspose.Words für .NET unterstützt XML als Datenquelle für die E-Mail-Fusion. DataSet Objekt und die E-Mail-Fusion ausführen. unten ist ein XML-Datei-Sample für unser Benutzungsfall.
<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>
Das folgende Code-Sample erfährt Daten aus einer XML-Datenquelle und führt die E-Mail-Fusion mit C# durch#.
Im Folgenden ist die Mail merge Tempel Sie werden mit Daten aus dem XML-Datei populiert.

Dieses Bild repräsentiert die erste Seite des resultierenden Word-Dokuments, das nach dem Ausführen der E-Mail-Fusion erworben wurde.

Custom Formatierung von Merge Feldern
Aspose.Words für .NET bietet eine verbesserte Kontrolle über den E-Mail-Fusionsprozess. MailMerge.FeldMergingCallback Eigentum ermöglicht es Ihnen, das E-Mail-Fusionverhalten zu konfigurieren, da jedes Fusionfeld konfrontiert wird. IFieldMergingCallback.FieldMerging und IFieldMergingCallback.ImageFieldMerging Methoden ermöglichen die Anpassung der E-Mail-Fusion.
Im Folgenden ist ein Code-Sample, das zeigt, wie man während der E-Mail-Fusion durch das angegebenen Beispiel-Template angepasst Formatierung anwenden kann:
Die folgenden implementieren die HandleMergeFieldAlternatingRows Klasse.
Mail Merge mit Regionen mit C#
In einigen Fällen müssen Sie möglicherweise eine bestimmte Region innerhalb des Word-Dokuments populieren und wiederholen. Für solche Szenarien verwenden Sie die E-Mail-Fusion mit Regionen. Um eine Region zu erstellen, geben Sie sowohl den Beginn als auch den Ende der Region fest; dann wiederholt sich diese Region für jede Aufzeichnung in der Datenquelle. Das Beispiel des Vorbildes unten enthält zwei Regionen — Ordnungen und Ordnungsdetails — mit den Fusionfeldern «TableStart:Orders», «Taulend:OrderDetail», »TabellEnd: OrderDatail».

Hier ist ein Code-Sample, das die E-Mail-Fusion basierend auf Regionen für die oben genannten Tempel.
Die folgenden Methoden zeigen, wie man Daten aus einer Datenbank lesen kann.
Nested Mail vereint
Oft werden Daten aus der Quelle in relativen Formaten strukturiert. Zum Beispiel können “Beträge” eine ein-zu-vielfach-Verhältnis mit “OrderDetails” haben, die Aufzeichnungen von Gegenständen innerhalb einer Bestellung beibehalten. In solchen Szenarien verwenden Sie eine Nested Mail Fusion. Rechnung Template Das passt dieses Szenario gut an.

Im Folgenden ist eine XML-Datenquelle für unser Nested Mail Fusion Beispiel.
<?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>
Die entsprechende OrderSchema.xsd Datei für diesen XML ist:
<?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>
Das folgende Code-Sample führt die Nested Mail-Fusion mit C# aus#.
Word-Dokument nach E-Mail Mischung
Unten ist die erste Seite des resultierenden Word-Dokuments, das nach dem Ausführen der Nested Mail-Fusion erworben wurde.

Schlussfolgerungen
Aspose.Words für .NET ist eine umfassende E-Mail-Fusion API, die sowohl Standard- als auch erweiterte Funktionen zur Verfügung stellt. Mit nur wenigen Code-Linien können Sie einfache oder komplexe Berichte aus verschiedenen Datenquellen unbequem entwickeln. Dokumentation. Um mit Aspose.Words für .NET zu beginnen, erkunden Sie die verfügbaren Entwickler Guides und Probencode auf GitHub. Der Aspose Plugin bietet auch fortschrittliche Funktionen für die Berichterstattung.
Versuchen Sie Aspose.Words für .NET kostenlos
Sie können eine kostenlose vorübergehende Lizenz erhalten, um Aspose.Words für .NET ohne Einschränkungen zu versuchen. Erhalten Sie Ihre vorübergehende Lizenz jetzt.
More in this category
- Konvertieren Word DOC/DOCX in PDF in C# .NET Aspose.Words' Document Converter Plugin
- Barcode in Word-Dokumenten generieren (.NET, C#) | Barcode aus Word lesen (.NET)
- Bilder aus Word-Dokumenten in C# Automate Image Processing extrahieren
- Finden und ersetzen Text in Word-Dokumenten mit C# Automate Word Editing
- Erstellen Sie benutzerdefinierte Word-Dokumente mit C# .NET Aspose.Words Mail Merge Plugin