Aspose.Words LINQ Motore di Reporting per .NET

Il **Aspose.Words LINQ Reporting Engine per .NET ** consente agli sviluppatori di creare **richi, rapporti basati sui dati ** combinando una sintax di tag di testo piatto con le domande LINK. Rapporti possono essere collegati a collezioni, database, JSON, XML o oggetti personalizzati, con il filtraggio, il gruppo e l’aggregazione eseguiti direttamente all’interno del modello. Il risultato è un rapporto completamente popolato in DOCX, PDF, HTML, o qualsiasi altro formato supportato da Aspose, Word.

Installazione e Setup

  • Installare il pacchetto NuGet Aspose.Words.
  • Applicare la tua licenza ( Licenza a consumo ).
  • Aggiungi un riferimento a Aspose.Words e garantire che le dipendenze siano incluse.
  • Per tutti i passaggi, vedi il Guida di installazione .

Piattaforme supportate: Windows, Linux, macOS e OS mobile con .NET Framework, .Net Core,.NET 5/6+, o Mono.IDE: Visual Studio 2010-2022, Xamarin e MonoDevelop.

Inizio rapido: costruire un rapporto da 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");

Caratteristiche e funzionalità

Modello di Syntax

  • Tags come <<Name>>, <<foreach:Orders>>, <<if:Condition>> E’ umano leggibile.
  • Supporto in paragrafi, tavoli, capolavori e piedi.

Link di collegamento dei dati

  • Link a colezioni, DataTables, EF query, JSON, XML, o oggetti personalizzati.
  • Il link in linea: Where, OrderBy, GroupBy, e delle proiezioni.

Filtrare, gruppiare e classificare

  • I blocchi condizionali con <<if:…>> / <<endif>>.
  • I dati di gruppo con <<groupby:Property>>.
  • Ordine in linea con orderby delle clausole.

Funzioni di aggregazione

  • I tag in costruzione: <<sum:>>, <<avg:>>, <<count>>, <<min:>>, <<max:>>.
  • Aggiornamento automatico quando i dati cambiano.

Logica Condizionale e Switch

  • Utilizzo <<switch:Expression>>, <<case:Value>>, <<default>> per diversi scenari.
  • Simplifica i modelli con diversi layout.

Dati Nested e Ierarchici

  • Navigare i grafici degli oggetti (ad esempio., <<foreach:Order.Items>>).
  • Costruisci tabelle/list con gruppi + condizioni.

Funzioni personalizzate ed estensibilità

  • Registrazione dei metodi di estensione o degli operatori per la logica personalizzata.
  • Eseguire formattazione e trasformazioni specializzate.

Il tempio di eredità

  • Definisci i moduli di base e li riutilizzi attraverso i modelli per bambini.
  • Mantenere branding e stili coerenti.

Eventi e Callbacks

  • Hook In ReportBuildStarted, TagProcessed, ReportBuildFinished.
  • Aggiungi logging, iniezioni di diagrammi/immagini o modifica la produzione in modo dinamico.

La localizzazione e l’internazionalismo

  • Formatta le date, i numeri, le valute per cultura.
  • Integrare i file di risorse per i rapporti multilingue.

FAQ

**Come si differenzia da Mail Merge?**LINQ Reporting utilizza le etichette di testo e supporta le espressioni Linq, a differenza dei tradizionali campi di fusione postale.

**Quali fonti di dati sono supportate?**XML, JSON, CSV, DataTables, Entity Framework e oggetti .NET personalizzati.

**Posso inserire schede e immagini?**I template possono includere grafici, barcodi e immagini popolate dai dati.

**Quali formati posso eseguire?**DOCX, PDF, HTML, RTF, ODT e tutti i formati supportati da Aspose.Words.

**Supporta la localizzazione?**Sì, la formattazione culturale e l’integrazione delle risorse sono supportati.

 Italiano