Automatizace vytváření personalizovaných dokumentů – jako jsou zprávy, dopisy a faktury – může výrazně zvýšit efektivitu vašeho pracovního toku. s C# Mail Merge napájeným Aspose.Words pro .NET, můžete to dosáhnout bez problémů. Tento průvodce vám pomůže pomocí Aspose.Words Mail Merge Plugin provést efektivní a skalovatelnou generaci dokumentů v rámci vašich aplikací .NET – bez potřeby MS Word nebo Office Interop.

Obsah

Co je to Mail Merge}

Mail Merge je výkonná metodika pro dynamické generování dokumentů populací šablon s daty z různých zdrojů. Aspose.Words umožňuje automatizovat úkoly, jako jsou:

  • Vytváření personalizovaných dopisů a faktur.
  • Vytváření hromadných zpráv pomocí strukturovaných formátů, jako jsou XML, JSON nebo databáze, které umožňují dynamické generování zpráv s C# a Aspose.Words**.

Datové zdroje pro Mail Merge

Aspose.Words podporuje různé zdroje dat, včetn:

  • Objekty: Populární šablony pomocí třídních příklad.
  • XML: Nabíjejte strukturované údaje pro dynamické pole.
  • JSON: Snadno se integruje s moderními API.
  • CSV: Odstranění tabulárních údajů pro generování dokumentů v množstv.
  • DataTable/DataSet: Použijte ADO.NET pro integraci databáze.

Připravování šablony pro Mail Merge {#připravování mail-merge-templates}

ablona fúzí pošty je dokument obsahující fúzí polí, které budou populovány s daty z vašeho specifikovaného zdroje dat během provozu. Šablona může být ve formátu DOC nebo DOCX a nevyžaduje specifický styl:

  • Otevřete dokument nebo vytvořte nový v MS Word.
  • Položte kurzor tam, kde chcete vložit fúzní pole.
  • V nabídce Vložte vyberte možnost **Pole.
  • Z seznamu Názvy pole vyberte MergeField.
  • Zadejte název pro fúzní pole v okně Pole název a klikněte na OK.
  • Zachraňte dokument.

The following screenshot illustrates a Šablona vzorku document.

Mail Merge Template

.NET Mail Merge API - Instalace

Můžete nainstalovat Aspose.Words pro .NET různými způsoby:

Výkon Mail Merge v Word dokumentu pomocí C#

Jakmile je váš šablona hotová, můžete provést fúzi e-mailu k vytváření dokumentů. zde jsou kroky k provedení fúze e-mailu na vaší připravené šablone:

Zde je vzorek kódu, který ukazuje, jak automatizovat generování zpráv v C# pomocí řady hodnot:

Text po přidání e-mailu

Execute Mail Merge in C#

Výkon Mail Merge pomocí XML Data Source v 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 Databáze 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>

Následující vzorek kódu získává data z datového zdroje XML a provádí fúzi e-mailu pomocí C#.

Below is the mail merge Templář that will be populated with data from the XML file.

Mail Merge Template for XML

Tento obrázek představuje první stránku výsledného dokumentu Word získaného po spuštění e-mailové fúze.

Execute Mail Merge with XML in C#

Přizpůsobené formátování Merge pole

Aspose.Words for .NET provides enhanced control over the mail merge process. The Společnost MailMerge.FieldMergingCallback property allows you to configure mail merge behavior as each merge field is encountered. Implementing the Přehrávač: IFieldMergingCallback and IFieldMergingCallback.ImageFieldMerging methods enables customization of the mail merge operation.

Níže je vzorek kódu, který ukazuje, jak aplikovat přizpůsobené formátování během e-mailového fúze prostřednictvím předloženého vzorku:

Následující provádí třídu **HandleMergeFieldAlternatingRows.

Mail Merge s Regiony pomocí C#

V některých případech může být nutné populovat a opakovat konkrétní oblast v dokumentu Word. Pro takové scénáře použijte e-mailovou fúzi s regiony. Chcete-li vytvořit region, specifikujte jak začátek, tak konec regionu; e-mailová fúze pak opakuje tuto oblast pro každý záznam v zdroji dat. Příklad příkladu níže obsahuje dva regiony - objednávky a podrobnosti objednávky - používající fúze pole «TableStart:Orders», «TableEnd:Orders», «TableStart:OrdersDetails» a «TableEnd:OrdersDetails».

Mail Merge Template with Regions

Here is a code sample that executes mail merge based on regions for the previously mentioned Templář.

Následující metody ilustrují, jak číst data z databáze.

Nested Mail se shromažďuje}

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 fakturační šablona that suits this scenario well.

Mail Merge Template with Regions

Následující je příklad datového zdroje XML pro naše spojení pošty.

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

Příslušný soubor OrderSchema.xsd pro 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>

Následující vzorek kódu provádí fúzi nahromaděné pošty pomocí C#.

Text po přidání e-mailu

Níže je první stránka výsledného dokumentu Word získaného po spuštění splynutí pošty.

Word Document after Mail Merge

závěr

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 Dokumentace. To begin with Aspose.Words for .NET, explore the available Návod vývojáře and sample code on GitHub. Plugin Aspose také nabízí pokročilé funkce pro generování zpráv.

Vyzkoušejte Aspose.Words pro .NET zdarma

You can obtain a free temporary license to try Aspose.Words for .NET without limitations. Získejte svou dočasnou licenci nyní.

More in this category