
L’automatisation de la génération de documents est cruciale pour les entreprises cherchant à créer des rapports, des factures et des lettres dynamiques. Avec Aspose.Words Mail Merge pour .NET, vous pouvez remplir efficacement des modèles Word avec des données provenant de diverses sources, y compris des objets, CSV, JSON et XML. Ce guide vous expliquera comment utiliser le Mail Merge en C# pour des flux de travail de documents automatisés et rationalisés, en mettant l’accent sur la création dynamique de documents Word avec C# .NET.
Table des matières
- Aperçu du Mail Merge pour .NET
- Génération de documents à partir de diverses sources de données
- Meilleures pratiques pour le Mail Merge
- Questions fréquentes
Aperçu du Mail Merge pour .NET
Le plugin Aspose.Words Mail Merge pour .NET permet aux développeurs de créer des documents personnalisés à partir de modèles prédéfinis contenant des champs de fusion. Cette intégration est conçue pour une utilisation transparente dans les environnements .NET, offrant des capacités pour :
- Remplir dynamiquement des modèles avec des données, prenant en charge la génération de documents Word sous .NET framework.
- Effectuer efficacement la génération de documents en masse, en tirant parti de la solution de mail merge .NET pour les documents Word.
- Garantir une mise en forme cohérente à travers les sorties, améliorant les meilleures pratiques de modèle de document Word en C#.
Caractéristiques clés :
- Support multi-sources : Utilisez des données provenant d’objets, de bases de données, de XML, de JSON et de CSV pour créer des documents Word personnalisés avec C#.
- Haute performance : Gérez efficacement de grands ensembles de données et des opérations en masse pour la génération dynamique de documents Word avec .NET Core.
- Modèles personnalisables : Créez des modèles avec des espaces réservés pour l’insertion de données, en utilisant les capacités d’automatisation du mail merge Word .NET.
Configuration
Pour commencer, installez Aspose.Words en utilisant NuGet :
PM> Install-Package Aspose.Words
Générer un document Word à partir d’un modèle en utilisant des objets C#
Commençons par remplir un modèle Word en utilisant des objets C#. Nous allons créer un document Word (DOC/DOCX) avec les espaces réservés suivants :
<<[sender.Name]>> dit : "<<[sender.Message]>>."
Dans cet exemple, sender est une instance d’une classe que nous allons utiliser pour remplir le modèle en utilisant l’approche C# générer un document Word à partir d’une base de données.
Ensuite, nous allons utiliser le moteur de reporting d’Aspose.Words pour générer le document Word à partir du modèle et de l’instance de la classe Sender en suivant ces étapes :
- Créez une instance de la classe Document et initialisez-la avec le chemin du modèle Word.
- Créez et initialisez un objet de la classe Sender.
- Instanciez la classe ReportingEngine.
- Remplissez le modèle en utilisant ReportingEngine.BuildReport(), qui prend en paramètres l’instance du Document, la source de données et le nom de la source de données.
- Enregistrez le document Word généré en utilisant Document.Save().
Voici un exemple de code démontrant comment générer un document Word à partir d’un modèle en C#.
Sortie

Générer un document Word à partir d’une source de données XML en C#
Pour générer un document Word à partir d’une source de données XML, nous allons utiliser un modèle Word plus complexe avec les espaces réservés suivants :
<<foreach [in persons]>>Nom : <<[Name]>>, Âge : <<[Age]>>, Date de naissance : <<[Birth]:"dd.MM.yyyy">>
<</foreach>>
Âge moyen : <<[persons.Average(p => p.Age)]>>
La source de données XML utilisée dans cet exemple est montrée ci-dessous.
Pour créer un document Word à partir d’une source de données XML, suivez ces étapes :
- Créez une instance de la classe Document et initialisez-la avec le chemin du modèle Word.
- Créez une instance de la classe XmlDataSource et initialisez-la avec le chemin du fichier XML.
- Instanciez la classe ReportingEngine.
- Utilisez la méthode ReportingEngine.BuildReport() pour remplir le modèle Word.
- Enregistrez le document Word généré en utilisant la méthode Document.Save().
Voici un exemple de code démontrant comment générer un document Word à partir d’une source de données XML en C#.
Sortie

Générer un document Word à partir d’une source de données JSON en C#
Ensuite, explorons comment générer un document Word en utilisant une source de données JSON. Dans cet exemple, nous allons créer une liste de clients segmentés par leurs responsables. Le modèle Word ressemblera à ceci :
<<foreach [in managers]>>Responsable : <<[Name]>>
Contrats :
<<foreach [in Contract]>>- <<[Client.Name]>> ($<<[Price]>>)
<</foreach>>
<</foreach>>
La source de données JSON correspondante que nous allons utiliser pour remplir le modèle est ci-dessous :
Pour générer le document Word à partir de JSON, nous utiliserons la classe JsonDataSource pour charger la source de données, et les étapes restantes suivront la structure précédente. Voici un exemple de code démontrant comment générer un document Word à partir du modèle JSON en C#.
Sortie

Générer un document Word à partir d’une source de données CSV en C#
Pour générer le document Word à partir d’une source CSV, nous allons utiliser le modèle Word suivant :
<<foreach [in persons]>>Nom : <<[Column1]>>, Âge : <<[Column2]>>, Date de naissance : <<[Column3]:"dd.MM.yyyy">>
<</foreach>>
Âge moyen : <<[persons.Average(p => p.Column2)]>>
Le modèle sera rempli en utilisant les données CSV suivantes :
Maintenant, examinons le code C#. Les étapes restent les mêmes, sauf pour une différence clé : nous allons utiliser la classe CsvDataSource pour charger les données CSV. L’exemple de code suivant illustre comment générer le document Word à partir d’une source de données CSV.
Sortie

Essayez Aspose.Words pour .NET gratuitement
Vous pouvez essayer Aspose.Words pour .NET en utilisant une licence temporaire gratuite.
Conclusion
Dans cet article, vous avez appris comment générer des documents Word à partir de modèles en utilisant C#. Vous avez exploré comment tirer parti de diverses sources de données telles que des objets, XML, JSON et CSV pour la génération dynamique de documents sous .NET. Pour plus d’informations sur les capacités de traitement de modèles Word .NET, plongez dans la documentation, et n’hésitez pas à nous contacter via notre forum.