
Automatizar a geração de documentos é essencial para empresas que buscam criar relatórios dinâmicos, faturas e cartas. Com Aspose.Words Mail Merge for .NET, você pode preencher eficientemente modelos do Word com dados de várias fontes, incluindo objetos, CSV, JSON e XML. Este guia o conduzirá através da utilização da Mala Direta em C# para fluxos de trabalho de documentos automatizados e simplificados, focando na criação dinâmica de documentos do Word com C# .NET.
Tópicos Abordados:
- Visão Geral da Mala Direta para .NET
- Gerar Documentos de Várias Fontes de Dados
- Melhores Práticas para Mala Direta
- Perguntas Frequentes
Visão Geral da Mala Direta para .NET
Aspose.Words Mail Merge for .NET permite que desenvolvedores gerem documentos personalizados a partir de modelos predefinidos contendo campos de mesclagem. Este plugin é projetado para integração perfeita em ambientes .NET, oferecendo capacidades para:
- Preencher dinamicamente modelos com dados, suportando geração de documentos do Word no framework .NET.
- Realizar eficientemente a geração em massa de documentos, aproveitando a solução de mala direta .NET para grandes conjuntos de dados.
- Garantir formatação consistente em saídas, aprimorando as melhores práticas de modelo de documento Word em C#.
Principais Recursos:
- Suporte a Múltiplas Fontes: Use dados de objetos, bancos de dados, XML, JSON e CSV para criar documentos do Word personalizados com C#.
- Alto Desempenho: Lide eficientemente com grandes conjuntos de dados e operações em massa para geração dinâmica de documentos do Word com .NET Core.
- Modelos Personalizáveis: Crie modelos com espaços reservados para inserção de dados, utilizando as capacidades de automação de mala direta do Word em .NET.
Configuração
Para começar, instale o Aspose.Words usando o NuGet:
PM> Install-Package Aspose.Words
Gerar Documento do Word a partir de Modelo Usando Objetos C#
Vamos começar preenchendo um modelo do Word usando objetos C#. Criaremos um documento do Word (DOC/DOCX) com os seguintes espaços reservados:
<<[sender.Name]>> diz: "<<[sender.Message]>>."
Neste exemplo, sender é uma instância de uma classe que usaremos para preencher o modelo usando a abordagem C# gerar documento do Word a partir do banco de dados.
Em seguida, usaremos o mecanismo de relatórios do Aspose.Words para gerar o documento do Word a partir do modelo e da instância da classe Sender seguindo estas etapas:
- Crie uma instância da classe Document e inicialize-a com o caminho do modelo do Word.
- Crie e inicialize um objeto da classe Sender.
- Instancie a classe ReportingEngine.
- Preencha o modelo usando ReportingEngine.BuildReport(), que recebe a instância do Document, a fonte de dados e o nome da fonte de dados como parâmetros.
- Salve o documento do Word gerado usando Document.Save().
Aqui está o exemplo de código demonstrando como gerar um documento do Word a partir de um modelo em C#.
Saída

Gerar Documento do Word a partir de uma Fonte de Dados XML em C#
Para gerar um documento do Word a partir de uma fonte de dados XML, usaremos um modelo do Word mais complexo com os seguintes espaços reservados:
<<foreach [in persons]>>Nome: <<[Name]>>, Idade: <<[Age]>>, Data de Nascimento: <<[Birth]:"dd.MM.yyyy">>
<</foreach>>
Idade média: <<[persons.Average(p => p.Age)]>>
A fonte de dados XML usada neste exemplo é mostrada abaixo.
Para criar um documento do Word a partir de uma fonte de dados XML, siga estas etapas:
- Crie uma instância da classe Document e inicialize-a com o caminho do modelo do Word.
- Crie uma instância da classe XmlDataSource e inicialize-a com o caminho do arquivo XML.
- Instancie a classe ReportingEngine.
- Use o método ReportingEngine.BuildReport() para preencher o modelo do Word.
- Salve o documento do Word gerado usando o método Document.Save().
Aqui está o exemplo de código demonstrando como gerar um documento do Word a partir de uma fonte de dados XML em C#.
Saída

Gerar Documento do Word a partir de uma Fonte de Dados JSON em C#
Em seguida, vamos explorar como gerar um documento do Word usando uma fonte de dados JSON. Neste exemplo, criaremos uma lista de clientes segmentados por seus gerentes. O modelo do Word será assim:
<<foreach [in managers]>>Gerente: <<[Name]>>
Contratos:
<<foreach [in Contract]>>- <<[Client.Name]>> ($<<[Price]>>)
<</foreach>>
<</foreach>>
A fonte de dados JSON correspondente que usaremos para preencher o modelo está abaixo:
Para gerar o documento do Word a partir do JSON, usaremos a classe JsonDataSource para carregar a fonte de dados, e as etapas restantes seguirão a estrutura anterior. Aqui está o exemplo de código demonstrando como gerar um documento do Word a partir do modelo JSON em C#.
Saída

Gerar Documento do Word a partir de uma Fonte de Dados CSV em C#
Para gerar o documento do Word a partir de uma fonte CSV, utilizaremos o seguinte modelo do Word:
<<foreach [in persons]>>Nome: <<[Column1]>>, Idade: <<[Column2]>>, Data de Nascimento: <<[Column3]:"dd.MM.yyyy">>
<</foreach>>
Idade média: <<[persons.Average(p => p.Column2)]>>
O modelo será preenchido usando os seguintes dados CSV:
Agora, vamos revisar o código C#. As etapas permanecem as mesmas, exceto por uma diferença chave: usaremos a classe CsvDataSource para carregar os dados CSV. O seguinte exemplo de código ilustra como gerar o documento do Word a partir de uma fonte de dados CSV.
Saída

Experimente o Aspose.Words para .NET Gratuitamente
Você pode experimentar o Aspose.Words for .NET usando uma licença temporária gratuita.
Conclusão
Neste artigo, você aprendeu como gerar documentos do Word a partir de modelos usando C#. Você explorou como aproveitar várias fontes de dados, como objetos, XML, JSON e CSV para geração dinâmica de documentos em .NET. Para mais informações sobre as capacidades do processamento de modelos do Word em .NET, mergulhe na documentação, e sinta-se à vontade para entrar em contato através do nosso fórum.