Aspose.Words Motor de Informes LINQ para .NET

El **Aspose.Words LINQ Reporting Engine para .NET ** permite que los desarrolladores creen **Richos, informes basados en datos ** al combinar una sintaxe de etiquetas de texto plano con las consultas de Linux. Reports pueden vincularse a colecciones, bases de datos, JSON, XML, o objetos personalizados, con filtración, agrupación y agregado realizados directamente dentro del modelo. El resultado es un informe totalmente populado en DOCX, PDF, HTML, u cualquier otro formato apoyado por Aspose, Words.

Instalación y configuración

  • Instalar el paquete NuGet Aspose.Words.
  • Aplicar su licencia ( Licenciamiento Medido ).).
  • Añade una referencia a Aspose.Words garantizar que las dependencias sean incluidas.
  • Para los pasos completos, ver el Guía de instalación .

Platformas apoyadas: Windows, Linux, macOS y OS móviles con .NET Framework, .NET Core o Mono.IDEs: Visual Studio 2010–2022, Xamarin, MonoDevelop.

Inicio rápido: Crea un informe de 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 y Funcionalidad

Título Syntax

  • Tags como <<Name>>, <<foreach:Orders>>, <<if:Condition>> Es humano de lectura.
  • Apoyado en parágrafos, mesas, cabezas y pies.

La conexión de datos de Link

  • Conexión a colecciones, tablas de datos, EF consultas, JSON, XML, o objetos personalizados.
  • Enlaces en línea: Where, OrderBy, GroupBy, y las proyecciones.

Filtración, Grouping y Sorting

  • Los bloques condicionales con <<if:…>> / <<endif>>.
  • Los datos de grupo con <<groupby:Property>>.
  • Inline ordenando con orderby las cláusulas.

Funciones de agrupación

  • Título en la etiqueta: <<sum:>>, <<avg:>>, <<count>>, <<min:>>, <<max:>>.
  • La actualización automática cuando los conjuntos de datos cambian.

Condicional y Switch Logic

  • Uso <<switch:Expression>>, <<case:Value>>, <<default>> para varios escenarios.
  • Simplifica los templates con diferentes layouts.

NESTED y datos jerárquicos

  • Navegación de gráficos de objetos (por ejemplo., <<foreach:Order.Items>>).).
  • Construye tablas / listas con grupos + condiciones.

Funciones personalizadas y extensibilidad

  • Registro de métodos de extensión o manipuladores para la lógica personalizada.
  • Performan formatos y transformaciones especializadas.

La herencia del templo

  • Define los patrones de base y los reutiliza a través de los modelos de niños.
  • Mantenga una marca y estilos consistentes.

Eventos y callbacks

  • Hook en ReportBuildStarted, TagProcessed, ReportBuildFinished.
  • Añadir logging, inyectar gráficos/imágenes, o modificar la salida dinámicamente.

Localización y internacionalización

  • Formato de fechas, números, monedas por cultura.
  • Integra archivos de recursos para informes multilingüe.

FAQ

**Cómo se diferencia esto de Mail Merge?**LINQ Reporting utiliza las etiquetas de texto y soporta las expresiones de Linq, a diferencia de los campos de fusión de correo tradicional.

**Qué fuentes de datos se apoyan?**XML, JSON, CSV, DataTables, Framework de la entidad y objetos .NET personalizados.

**Puedo incorporar gráficos y imágenes?**Los modelos pueden incluir gráficos, códigos de barras y imágenes populadas a partir de los datos.

**Qué formatos puedo extraer?**DOCX, PDF, HTML, RTF, ODT y todos los formatos apoyados por Aspose.Words.

**Suporta la localización?**Se apoya la formatación cultural y la integración de los recursos.

 Español