Att automatisera skapandet av personliga dokument – som rapporter, bokstäver och fakturor – kan förbättra effektiviteten i arbetsflödet. Med C# Mail Merge drivs av Aspose.Words för .NET, kan du uppnå detta smidigt. Denna guide kommer att gå igenom dig genom att använda Speed.Plugin för att skapa ett effektivt och skalbart dokument inom dina .NET-applikationer – utan behov av MS Word eller Office Interop. Vid slutet av denna guide, kommer du att vara utrustad med att integrera C# mail merge för rapporteringsautomation och sträva igenom din rapporteringarbetsflöde med hjälp av funktionaliteten Aspose Merger c.
Innehåll
- Vad är Mail Merge?
- Data källor för Mail Merge
- Förbereda Mail Merge Templates
- Börja med Aspose.Words för .NET
- Perform Mail Minska med Sample Data
- Mail Blanda med XML-data
- Custom Merge Field Formatering
- Mail förenar sig med regioner
- Nested Mail förenar sig
- slutsatser
Vad är Mail Merge}
Mail Merge är en kraftfull metod för att dynamiskt generera dokument genom att populera mallar med data från olika källor. med Aspose.Words kan du automatisera uppgifter som:
- Skapa personliga bokstäver och fakturor.
- Skapa massrapporter med hjälp av strukturerade format som XML, JSON eller databaser, vilket möjliggör dynamisk rapportering med C# och Aspose.Words.
Data källor för Mail Merge
Aspose.Words stöder en mängd olika datakällor, inklusive:
- Objekt: Populära mallar med klassinstanser.
- XML: Ladda upp strukturerade data för dynamiska fält.
- JSON: Lätt att integrera med moderna APIs.
- CSV: Leverera tabelldata för massdokumentgenerering.
- DataTable/DataSet: Använd ADO.NET för databasintegration.
Förberedande Template för Mail Merge
E-postmötet är dokumentet som innehåller mötfält som kommer att populeras med data från din angivna datakälla under utförandet. Templat kan vara i DOC eller DOCX format och kräver inte en specifik stil. Följ dessa steg för att skapa en e-postmötet mall:
- Öppna ditt dokument eller skapa en ny i MS Word.
- Placera kursorn där du vill ange ett fusionsfält.
- Från Inser-menyn väljer du Fält-alternativet.
- Från listan Fältnamn väljer du MergeField.
- Ange ett namn för fältet i fältet Fältnamn och klicka på OK.
- Spara dokumentet.
Följande skärmdumpar illustrerar en Prova Template Dokumentet är.

.NET Mail Merge API - Installation
Du kan installera Aspose.Words för .NET genom olika metoder:
Perform Mail Merge i Word Document med C#
När din mall är klar kan du köra e-postmötet för att generera dokument. Här är stegen för att köra e-postmötet på din förberedda mall:
- Ladda upp malldokumentet med hjälp av Dokumentet Klassen är.
- Ställ in nödvändiga e-postmängningsalternativ, såsom Dokument.MailMerge.TrimWhitespaces.
- Utför e-postmeddelandet med hjälp av Dokument.MailMerge.Exekutera() Metoden, passera datakällan som en parameter.
- Spara det genererade dokumentet med hjälp av Försäljning (Save String) Metoden är.
Här är ett kodprov som visar hur man automatiskt rapporterar generera i C# med hjälp av en uppsättning värden:
Orddokumentet efter Mail Merges

Gör Mail Merge med hjälp av XML Data Source i C#
XML-filer används vanligtvis för lagring och överföring av data. Aspose.Words för .NET stöder XML som en datakälla för mail fusionsverksamhet DataSet objekt och köra e-postmyntering. nedan är en XML-fil prover för vårt användningsfall.
<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>
Följande kodprov hämtar data från en XML-datakälla och utför mailfusionen med C#.
Nedan är mail merge Templet som kommer att populeras med data från XML-filen.

Denna bild representerar den första sidan av det resulterande Word-dokumentet som erhålls efter att e-postmötet har utförts.

Anpassad formatering av merge-fält {#anpassad formatering av merge-fält}
Aspose.Words för .NET ger förbättrad kontroll över mailfusionsprocessen MailMerge.FieldMergingCallback egendom tillåter dig att konfigurera e-postmötet beteende som varje mötfält möts IFieldMergingCallback.FieldMerging och IFieldMergingCallback.ImageFieldMerging Metoderna möjliggör anpassning av mail fusionsverksamheten.
Nedan är ett kodmönster som visar hur man tillämpar anpassad formatering under e-postmönstret genom den angivna exempelmallen:
Följande implementerar HandleMergeFieldAlternatingRows klass.
Mail Merge med Regioner med C#
I vissa fall kan du behöva populera och upprepa en viss region inom Word-dokumentet. För sådana scenarier, använd e-postmötet med regioner. Om du vill skapa en region, ange både början och slutet av regionen; mailmätet kommer sedan att återställa denna region för varje rekord i datakällan. Templatexempel nedan innehåller två områden – Order och Orderdetaljer – med hjälp av fälten ”TableStart:Orders”, “TabellEnd:OrderDetails”, och ”tabellend:orderDatails».

Här är ett kodmönster som utför e-postmängning baserat på regioner för ovan nämnda Templet.
Följande metoder illustrerar hur man läser data från en databas.
Nested Mail Mörge}
Ofta är data från källan strukturerade i relativa format. Till exempel kan “Order” ha ett förhållande en till flera med “Orddetaljer”, som håller poster av objekt inom en order. I sådana scenarier, använd nickade mail fusion Föredragande template Det passar detta scenario bra.

Följande är en XML-data källor för vårt nötade e-postmässa exempel.
<?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>
Den motsvarande OrderSchema.xsd-filen för denna XML är:
<?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>
Följande kodmönster utför den nötade mailfusionen med hjälp av C#.
Orddokumentet efter Mail Merges
Nedan är den första sidan av det resulterande Word-dokumentet som erhålls efter utförandet av den nötade mailfusionen.

slutsatser
Aspose.Words för .NET är en omfattande mail merge API som ger både standard och utökade funktioner som är lämpliga för. med bara några linjer av kod, kan du utveckla enkla eller komplexa rapporter från olika datakällor utan problem. för vägledning om .NET automatiserade rapporter generera bästa praxis, se Dokumentation. För att börja med Aspose.Words för .NET, utforska tillgängliga Utvecklarens guider och provkod på GitHub. Plugin Aspose erbjuder också avancerade funktioner för rapportering.
Försök Aspose.Words för .NET gratis
Du kan få en gratis tillfällig licens för att prova Aspose.Words för .NET utan begränsningar. Få din tillfälliga licens nu.
More in this category
- Konvertera Word DOC/DOCX till PDF i C# .NET och Aspose.Words' Document Converter Plugin
- Generera streckkod i Word-dokument (.NET, C#) | Läs streckkod från Word (.NET)
- Extrakt av bilder från Word-dokument i C# Automatisk bildbehandling
- Hitta och ersätta text i Word-dokument med hjälp av C# Automatiskt Word Redigera
- Skapa anpassade Word-dokument med hjälp av C# .NET Aspose.Words Mail Merge Plugin