
Automatizzare la generazione di documenti è essenziale per le aziende che mirano a creare report dinamici, fatture e lettere. Con Aspose.Words Mail Merge per .NET, puoi popolare in modo efficiente i modelli Word con dati provenienti da varie fonti, inclusi oggetti, CSV, JSON e XML. Questa guida ti guiderà nell’utilizzo del Mail Merge in C# per flussi di lavoro documentali automatizzati e semplificati, concentrandosi sulla creazione dinamica di documenti Word con C# .NET.
Argomenti Trattati:
- Panoramica del Mail Merge per .NET
- Genera Documenti da Diverse Fonti di Dati
- Migliori Pratiche per il Mail Merge
- Domande Frequenti
Panoramica del Mail Merge per .NET
Aspose.Words Mail Merge per .NET consente agli sviluppatori di generare documenti personalizzati da modelli predefiniti contenenti campi di unione. Questo plugin è progettato per un’integrazione senza soluzione di continuità all’interno degli ambienti .NET, offrendo capacità di:
- Popolare dinamicamente i modelli con dati, supportando la generazione di documenti Word per il framework .NET.
- Eseguire in modo efficiente la generazione in massa di documenti, sfruttando la soluzione di mail merge .NET per grandi set di dati.
- Garantire formattazioni coerenti tra le uscite, migliorando le migliori pratiche per i modelli di documenti Word in C#.
Caratteristiche Principali:
- Supporto Multi-Sorgente: Utilizza dati provenienti da oggetti, database, XML, JSON e CSV per creare documenti Word personalizzati con C#.
- Alte Prestazioni: Gestisci in modo efficiente grandi set di dati e operazioni in massa per generazione dinamica di documenti Word con .NET Core.
- Modelli Personalizzabili: Crea modelli con segnaposto per l’inserimento di dati, utilizzando le capacità di automazione del mail merge Word in .NET.
Configurazione
Per iniziare, installa Aspose.Words utilizzando NuGet:
PM> Install-Package Aspose.Words
Genera Documenti Word da Modello Utilizzando Oggetti C#
Iniziamo popolando un modello Word utilizzando oggetti C#. Creeremo un documento Word (DOC/DOCX) con i seguenti segnaposto:
<<[sender.Name]>> dice: "<<[sender.Message]>>."
In questo esempio, sender è un’istanza di una classe che utilizzeremo per popolare il modello utilizzando l’approccio C# genera documento Word da database.
Successivamente, utilizzeremo il motore di reporting di Aspose.Words per generare il documento Word dal modello e dall’istanza della classe Sender seguendo questi passaggi:
- Crea un’istanza della classe Document e inizializzala con il percorso del modello Word.
- Crea e inizializza un oggetto della classe Sender.
- Instanzia la classe ReportingEngine.
- Popola il modello utilizzando ReportingEngine.BuildReport(), che prende come parametri l’istanza del Documento, la sorgente dati e il nome della sorgente dati.
- Salva il documento Word generato utilizzando Document.Save().
Ecco il campione di codice che dimostra come generare un documento Word da un modello in C#.
Output

Genera Documento Word da una Sorgente Dati XML in C#
Per generare un documento Word da una sorgente dati XML, utilizzeremo un modello Word più complesso con i seguenti segnaposto:
<<foreach [in persons]>>Nome: <<[Name]>>, Età: <<[Age]>>, Data di Nascita: <<[Birth]:"dd.MM.yyyy">>
<</foreach>>
Età media: <<[persons.Average(p => p.Age)]>>
La sorgente dati XML utilizzata in questo esempio è mostrata di seguito.
Per creare un documento Word da una sorgente dati XML, segui questi passaggi:
- Crea un’istanza della classe Document e inizializzala con il percorso del modello Word.
- Crea un’istanza della classe XmlDataSource e inizializzala con il percorso del file XML.
- Instanzia la classe ReportingEngine.
- Utilizza il metodo ReportingEngine.BuildReport() per popolare il modello Word.
- Salva il documento Word generato utilizzando il metodo Document.Save().
Ecco il campione di codice che dimostra come generare un documento Word da una sorgente dati XML in C#.
Output

Genera Documento Word da una Sorgente Dati JSON in C#
Ora esploriamo come generare un documento Word utilizzando una sorgente dati JSON. In questo esempio, creeremo un elenco di clienti segmentati dai loro manager. Il modello Word avrà questo aspetto:
<<foreach [in managers]>>Manager: <<[Name]>>
Contratti:
<<foreach [in Contract]>>- <<[Client.Name]>> ($<<[Price]>>)
<</foreach>>
<</foreach>>
La corrispondente sorgente dati JSON che utilizzeremo per popolare il modello è mostrata di seguito:
Per generare il documento Word da JSON, utilizzeremo la classe JsonDataSource per caricare la sorgente dati, e i passaggi rimanenti seguiranno la struttura precedente. Ecco il campione di codice che dimostra come generare un documento Word dal modello JSON in C#.
Output

Genera Documento Word da una Sorgente Dati CSV in C#
Per generare il documento Word da una sorgente CSV, utilizzeremo il seguente modello Word:
<<foreach [in persons]>>Nome: <<[Column1]>>, Età: <<[Column2]>>, Data di Nascita: <<[Column3]:"dd.MM.yyyy">>
<</foreach>>
Età media: <<[persons.Average(p => p.Column2)]>>
Il modello sarà popolato utilizzando i seguenti dati CSV:
Ora, rivediamo il codice C#. I passaggi rimangono gli stessi tranne per una differenza chiave: utilizzeremo la classe CsvDataSource per caricare i dati CSV. Il seguente campione di codice illustra come generare il documento Word da una sorgente dati CSV.
Output

Prova Aspose.Words per .NET Gratuitamente
Puoi provare Aspose.Words per .NET utilizzando una licenza temporanea gratuita.
Conclusione
In questo articolo, hai imparato come generare documenti Word da modelli utilizzando C#. Hai esplorato come sfruttare varie fonti di dati come oggetti, XML, JSON e CSV per generazione dinamica di documenti in .NET. Per ulteriori approfondimenti sulle capacità di elaborazione dei modelli Word in .NET, approfondisci la documentazione, e non esitare a contattarci tramite il nostro forum.