Aspose.Words LINQ Reporting Engine para .NET

O Aspose.Words LINQ Reporting Engine para .NET permite que os desenvolvedores criem ricos, relatórios baseados em dados , combinando uma sintaxe de tag de texto plano com consultas LINK. Relatórias podem ligar-se a coleções, bases de dados, JSON, XML ou objetos personalizados, com filtragem, agrupamento e agregação realizadas diretamente dentro do modelo.

Instalação e Setup

  • Instale o pacote NuGet Aspose.Words.
  • Aplique a sua licença ( Licenciamento Ponderado ).
  • Adicione uma referência a Aspose.Words e assegurar que as dependências sejam incluídas.
  • Para os passos completos, veja o Guia de instalação .

Platformas suportadas: Windows, Linux, macOS e OS móveis com .NET Framework, .Net Core,.NET 5/6+, ou Mono.IDEs: Visual Studio 2010–2022, Xamarin, MonoDevelop.

Início rápido: Crie um relatório do XML

using Aspose.Words;
using Aspose.Words.Reporting;

var doc = new Document("ReportTemplate.docx");
var dataSource = new XmlDataSource("Data.xml");

var engine = new ReportingEngine();
engine.BuildReport(doc, dataSource, "data");

doc.Save("Report.Output.docx");

Características e Funcionalidade

Síntese de Template

  • Tags como <<Name>>, <<foreach:Orders>>, <<if:Condition>> são humanamente leíveis.
  • Apoiado em parágrafos, mesas, cabeças e pés.

Linha de dados Binding

  • Ligue para colecções, DataTables, EF consultas, JSON, XML, ou objetos personalizados.
  • Com o link: Where, OrderBy, GroupBy, e as projeções.

Filtração, Grouping & Sorting

  • Blocos Condicionais com <<if:…>> / <<endif>>.
  • Os dados do grupo com <<groupby:Property>>.
  • Inline com a ordem orderby das cláusulas.

Funções de Agregação

  • Apresentação em tags: <<sum:>>, <<avg:>>, <<count>>, <<min:>>, <<max:>>.
  • Atualizações automáticas quando os dados mudam.

Condicional e Switch Logic

  • Utilização <<switch:Expression>>, <<case:Value>>, <<default>> para vários cenários.
  • Simplifica padrões com diferentes layouts.

Dados Nested e Hierárquicos

  • Navegação de gráficos de objetos (por exemplo., <<foreach:Order.Items>>).
  • Construa tabelas / listas com grupos + condições.

Funções personalizadas e extensibilidade

  • Registre métodos de extensão ou manuseiros para lógica personalizada.
  • Exerce formatação e transformações especializadas.

Herança do Template

  • Define os templates de base e reutilize-os em todo o template infantil.
  • Manter uma marca e estilos consistentes.

Eventos e Callbacks

  • Hook em ReportBuildStarted, TagProcessed, ReportBuildFinished.
  • Adicionar logging, injetar gráficos/imagens, ou modificar a saída dinamicamente.

Localização e internacionalização

  • Formato de datas, números, moedas por cultura.
  • Integrar arquivos de recursos para relatórios multilingüe.

FAQ

**Como isso difere do Mail Merge?**O LINQ Reporting usa tags de texto e suporta expressões Linq, ao contrário dos campos de fusão de correio tradicionais.

**Que fontes de dados são suportadas?**XML, JSON, CSV, DataTables, Entity Framework e objetos .NET personalizados.

**Posso inserir gráficos e imagens?**Sim. Templates podem incluir gráficos, códigos de barras e imagens populadas a partir de dados.

**Quais formatos posso produzir?**DOCX, PDF, HTML, RTF, ODT e todos os formatos suportados por Aspose.Words.

**Ele suporta a localização?**Sim. A formatação cultural e a integração de recursos são apoiados.

 Português