Generování dokumentu Word ze šablony v C#

Automatizace generování dokumentů je pro firmy zásadní pro vytváření dynamických zpráv, faktur a dopisů. Pomocí hromadné korespondence Aspose.Words pro .NET můžete efektivně naplnit šablony Word daty z různých zdrojů, včetně objektů, CSV, JSON a XML. Tento průvodce ukazuje, jak využít hromadnou korespondenci v C# pro efektivní a automatizované pracovní postupy dokumentů, konkrétně se zaměřením na dynamické vytváření dokumentů Word v C# .NET.


Témata pokrytá:


Přehled hromadné korespondence pro .NET

Hromadná korespondence Aspose.Words pro .NET umožňuje vývojářům generovat personalizované dokumenty ze předem definovaných šablon obsahujících pole pro sloučení. Tento plugin je navržen pro bezproblémovou integraci v .NET prostředích a nabízí možnosti:

  • Dynamicky populovat šablony daty, což podporuje generování dokumentů Word na platformě .NET.
  • Efektivně provádět hromadné generování dokumentů s využitím řešení hromadné korespondence na .NET pro velké datové sady.
  • Udržovat konzistentní formátování napříč výstupy, což účinně zlepšuje nejlepší praktiky šablon dokumentů Word v C#.

Klíčové vlastnosti:

  1. Podpora více zdrojů: Používejte data z objektů, databází, XML, JSON a CSV k vytváření přizpůsobených dokumentů Word s C#.
  2. Vysoký výkon: Efektivně zpracovávejte velké datové sady a hromadné operace pro dynamické generování dokumentů Word pomocí .NET Core.
  3. Přizpůsobitelné šablony: Vytvářejte šablony s místy pro vložení dat, což využívá schopnosti automatizace hromadné korespondence Word v .NET.

Nastavení

Nainstalujte Aspose.Words pomocí NuGet:

PM> Install-Package Aspose.Words

Generování dokumentu Word ze šablony pomocí objektů C#

Nejprve se podívejme, jak naplnit šablonu Word pomocí objektů C#. Abyste to ilustrovali, vytvoříme dokument Word (DOC/DOCX) s následujícími místy jako obsahem dokumentu:

<<[sender.Name]>> říká: "<<[sender.Message]>>."

Zde je sender instance třídy, kterou použijeme k naplnění šablony pomocí přístupu C# generovat dokument Word z databáze.

Nyní můžeme použít reportovací engine Aspose.Words k vygenerování dokumentu Word ze šablony a instance třídy Sender následujícími kroky:

  • Vytvořte instanci třídy Document a inicializujte ji cestou k šabloně Word.
  • Vytvořte a inicializujte objekt třídy Sender.
  • Inicializujte třídu ReportingEngine.
  • Naplněte šablonu pomocí ReportingEngine.BuildReport(), která přijímá instanci dokumentu, datový zdroj a název datového zdroje jako parametry.
  • Uložte vygenerovaný dokument Word pomocí metody Document.Save().

Následující vzor kódu ukazuje, jak generovat dokument Word ze šablony v C#.

Výstup

Generování dokumentu Word z XML datového zdroje v C#

Pro generování dokumentu Word z XML datového zdroje využijeme složitější šablonu Word s následujícími místy:

<<foreach [in persons]>>Jméno: <<[Name]>>, Věk: <<[Age]>>, Datum narození: <<[Birth]:"dd.MM.yyyy">>
<</foreach>>
Průměrný věk: <<[persons.Average(p => p.Age)]>>

XML datový zdroj použitý v tomto příkladu je uveden níže.

Chcete-li vytvořit dokument Word z XML datového zdroje, postupujte těmito kroky:

  • Vytvořte instanci třídy Document a inicializujte ji cestou k šabloně Word.
  • Vytvořte instanci třídy XmlDataSource a inicializujte ji cestou k XML souboru.
  • Inicializujte třídu ReportingEngine.
  • Použijte metodu ReportingEngine.BuildReport() jako dříve k naplnění šablony Word.
  • Uložte vygenerovaný dokument Word pomocí metody Document.Save().

Zde je vzor kódu, který demonstruje, jak generovat dokument Word z XML datového zdroje v C#.

Výstup

Generování dokumentu Word z JSON datového zdroje v C#

Další krok, pojďme prozkoumat, jak generovat dokument Word pomocí JSON datového zdroje. V tomto příkladu vytvoříme seznam klientů segmentovaných podle jejich manažerů. Šablona Word bude vypadat takto:

<<foreach [in managers]>>Manažer: <<[Name]>>
Smlouvy:
<<foreach [in Contract]>>- <<[Client.Name]>> ($<<[Price]>>)
<</foreach>>
<</foreach>>

Příslušný JSON datový zdroj, který použijeme k naplnění šablony, je níže:

Chcete-li generovat dokument Word z JSON, použijeme třídu JsonDataSource k načtení datového zdroje a zbývající kroky budou následovat předchozí strukturu. Následující vzor kódu ukazuje, jak generovat dokument Word z JSON šablony v C#.

Výstup

Generování dokumentu Word z CSV datového zdroje v C#

Chcete-li generovat dokument Word z CSV zdroje, využijeme následující šablonu Word:

<<foreach [in persons]>>Jméno: <<[Column1]>>, Věk: <<[Column2]>>, Datum narození: <<[Column3]:"dd.MM.yyyy">>
<</foreach>>
Průměrný věk: <<[persons.Average(p => p.Column2)]>>

Šablona bude naplněna následujícími daty CSV:

Nyní si prohlédněme kód C#. Kroky zůstávají stejné kromě jednoho zásadního rozdílu: použijeme třídu CsvDataSource k načtení CSV dat. Následující vzor kódu ilustruje, jak generovat dokument Word z datového zdroje CSV.

Výstup

Vyzkoušejte Aspose.Words pro .NET zdarma

Můžete vyzkoušet Aspose.Words pro .NET pomocí bezplatné dočasné licence.

Závěr

V tomto článku jste se naučili, jak generovat dokumenty Word ze šablon pomocí C#. Objevili jste, jak využít různé datové zdroje, jako jsou objekty, XML, JSON a CSV pro dynamické generování dokumentů v .NET. Ponořte se hlouběji do schopností zpracování šablon Word v .NET tím, že prozkoumáte dokumentaci, a neváhejte se obrátit na nás prostřednictvím našeho fóra.

Další informace