Automatizácia vytvárania personalizovaných dokumentov – ako sú správy, listy a faktúry – môže výrazne zvýšiť efektívnosť vášho pracovného toku. C# Mail Merge napájaný Aspose.Words pre .NET, môžete to dosiahnuť bezproblémovo. Tento sprievodca vás bude prechádzať pomocou Pluguina Asposa.Slovo Mail Merging na efektívne a skalovateľné generovanie dokumentu v rámci vašich aplikácií .NET – bez potreby MS Word alebo Office Interop.

Obsah

Čo je to Mail Merge?

Mail Merge je silná metodika pre dynamické generovanie dokumentov populáciou šablóny s údajmi z rôznych zdrojov. Aspose.Words umožňuje automatizovať úlohy, ako napríklad:

  • Vytvorenie personalizovaných listov a faktúr.
  • Vytvorenie hromadných správ pomocou štruktúrovaných formátov, ako sú XML, JSON alebo databázy, ktoré umožňujú dynamickú generáciu správ s C# a Aspose.Words.

Datové zdroje pre Mail Merge

Aspose.Words podporuje rôzne zdroje údajov, vrátane:

  • Objekty: Populárne šablóny pomocou triednych príkladov.
  • XML: Nahrať štruktúrované údaje pre dynamické polia.
  • JSON: ľahko sa integruje s modernými API.
  • CSV: Odstrániť tabuľkové údaje pre generáciu dokumentov v množstve.
  • DataTable / DataSet: Použite ADO.NET pre integráciu databázy.

Príprava šablóny pre Mail Merge

Šablóna e-mailovej fúzie je dokument obsahujúci fúzie polí, ktoré budú populované s údajmi z vášho špecifikovaného zdroja údajov počas prevádzky. Šablóna môže byť vo formáte DOC alebo DOCX a nevyžaduje špecifický štýl.

  • Otvorte dokument alebo vytvorte nový v programe MS Word.
  • Umiestnite kurzor tam, kde chcete vložiť fúrované pole.
  • V ponuke Vložiť vyberte možnosť Zloženie.
  • Z zoznamu Názvy oblasti vyberte MergeField.
  • Zadajte názov pre fúrované pole v okne Názov poľa a kliknite na tlačidlo OK.
  • Zachráňte dokument.

Nasledujúci screenshot ilustruje Šablóna vzorky V dokumente .

Mail Merge Template

.NET Mail Merge API - Inštalácia

Aspose.Words pre .NET môžete nainštalovať rôznymi metódami:

Perform Mail Merge v Word Document pomocou C#

Akonáhle je váš šablóna pripravená, môžete vykonať e-mailovú fúziu na vytvorenie dokumentov. Tu sú kroky na vykonanie e-mailovej fúzie na pripravenom šablóne:

Tu je vzorka kódu, ktorá ukazuje, ako automatizovať generáciu správ v C# pomocou radu hodnôt:

Word dokument po zjednotení pošty

Execute Mail Merge in C#

Výkon Mail Merge pomocou XML Data Source v C#

XML súbory sa zvyčajne používajú na ukladanie a prenos údajov. Aspose.Words pre .NET podporuje XML ako zdroj údajov pre operácie fúzie pošty. DataSet objekt a spustiť e-mailovú fúziu. nižšie je vzorový súbor XML pre náš prípad použitia.

<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>

Nasledujúca vzorka kódu získava údaje zo zdroja údajov XML a vykonáva fúziu pošty pomocou C#.

Nižšie je e-mailová schránka Chrámy ktoré budú populované s údajmi z súboru XML.

Mail Merge Template for XML

Tento obrázok predstavuje prvú stránku výsledného dokumentu Word získaného po spustení e-mailovej fúzie.

Execute Mail Merge with XML in C#

Vlastné formátovanie zmesových polí {#vlastné formátovanie zmesových polí}

Aspose.Words pre .NET poskytuje zvýšenú kontrolu nad procesom fúzie e-mailov. Spoločnosť MailMerge.FieldMergingCallback vlastnosť umožňuje nastaviť správanie fúzie e-mailu, ako sa stretáva s každým poľom. Príspevok v téme Callback.FieldMerging a Spoločnosť IFieldMergingCallback.ImageFieldMerging Metódy umožňujú prispôsobenie operácie fúzie pošty.

Nižšie je vzorka kódu, ktorá ukazuje, ako aplikovať prispôsobené formátovanie počas e-mailovej fúzie prostredníctvom predloženého príkladového šablóny:

Nasledujúce implementuje triedu HandleMergeFieldAlternatingRows.

Mail Merge s Regions pomocou C#

V niektorých prípadoch možno budete musieť populovať a opakovať konkrétnu oblasť v dokumente Word. Pre takéto scenáre použite e-mailovú fúziu s regiónmi. Ak chcete vytvoriť región, určte začiatok a koniec regiónu; pošta Fúziou sa potom opakuje tento región pre každý záznam v zdroji údajov. Príklad šablóny nižšie obsahuje dve oblasti - Objednávky a podrobnosti o objednávke - s použitím polífúzie “TableStart:Orders”, “Babylový koniec:Detaily” a “Objednávka:Súbory”.

Mail Merge Template with Regions

Tu je vzorka kódu, ktorá vykonáva e-mailovú fúziu na základe regiónov pre vyššie uvedené Chrámy.

Nasledujúce metódy ilustrujú, ako čítať údaje z databázy.

Nested Mail Merge

Často sú údaje zo zdroja štruktúrované v relatívnych formátoch. Napríklad, “Návody” môžu mať jeden-za-mnoho vzťah s “Detaily objednávky”, ktorý uchováva záznamy položiek v rámci jedného príkazu. fakturačný template To sa tento scenár dobre hodí.

Mail Merge Template with Regions

Nasledujúca je zdroj údajov XML pre náš nástenný e-mail fúzia príklad.

<?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>

Príslušný OrderSchema.xsd súbor pre tento XML je:

<?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>

Nasledujúci kódový vzorec vykonáva fúziu nakloneného e-mailu pomocou C#.

Word dokument po zjednotení pošty

Nižšie je prvá stránka výsledného dokumentu Word získaného po spustení spájkovanej pošty.

Word Document after Mail Merge

Záver

Aspose.Words pre .NET je komplexná e-mailová fúzia API, ktorá poskytuje štandardné a rozšírené funkcie vhodné pre aplikácie .NET. S len niekoľkými riadkami kódu môžete rozvíjať jednoduché alebo zložité správy z rôznych zdrojov údajov bez ohľadu na to. dokumentáciaAk chcete začať s Aspose.Words pre .NET, preskúmajte dostupné Sprievodca vývojárom a vzorkový kód na GitHubPlugin Aspose tiež ponúka pokročilé funkcie pre generáciu správ.

Vyskúšajte Aspose.Words pre .NET zadarmo

Môžete získať bezplatnú dočasnú licenciu vyskúšať Aspose.Words pre .NET bez obmedzení. Získajte svoju dočasnú licenciu teraz.

More in this category