Mittel – 5-6 Sätze

Der Aspose.Words LINQ Reporting Engine for .NET ermöglicht Entwicklern, zu erstellen umfangreiche, datengetriebene Berichte indem eine reine Text-Tag-Syntax mit LINQ-Abfragen kombiniert wird. Berichte können an Sammlungen, Datenbanken, JSON, XML oder benutzerdefinierte Objekte gebunden werden, wobei Filterung, Gruppierung und Aggregation direkt innerhalb der Vorlage durchgeführt werden. Das Ergebnis ist ein vollständig ausgefüllter Bericht in Word-Formate.

Installation und Einrichtung

  1. Installieren Sie das NuGet-Paket Aspose.Words.
  2. Wenden Sie Ihre Lizenz an ( Metered Licensing ).
  3. Füge einen Verweis zu Aspose.Words und stelle sicher, dass Abhängigkeiten eingeschlossen sind.
  4. Für vollständige Schritte siehe die Installationsanleitung .

Unterstützte Plattformen: Windows, Linux und macOS mit .NET Framework, .NET oder Mono. IDEs: Visual Studio 2017–2026, JetBrains Rider, MonoDevelop.

Unterstützte Vorlagen-/Ausgabeformate: DOC, DOCX, RTF, DOT, DOTX, DOTM, DOCM, Word 2003 XML und Word 2007 XML.

Schnellstart

Erstellen Sie einen Bericht aus 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");

Funktionen und Funktionalität

Vorlagensyntax

  • Tags wie <<Name>>, <<foreach:Orders>>, <<if:Condition>> sind menschenlesbar.
  • Unterstützt in Absätzen, Tabellen, Kopfzeilen und Fußzeilen.

LINQ-Datenbindung

  • Binden an Sammlungen, DataTables, EF Abfragen, JSON, XML oder benutzerdefinierte Objekte.
  • Inline-LINQ: Where, OrderBy, GroupBy, Projektionen.

Filtern, Gruppieren & Sortieren

  • Bedingte Blöcke mit <<if:…>> / <<endif>>.
  • Daten gruppieren mit <<groupby:Property>>.
  • Inline-Sortierung mit orderby Klauseln.

Aggregationsfunktionen

  • Eingebaute Tags: <<sum:>>, <<avg:>>, <<count>>, <<min:>>, <<max:>>.
  • Automatische Updates, wenn sich Datensätze ändern.

Bedingte & Switch-Logik

  • Verwenden <<switch:Expression>>, <<case:Value>>, <<default>> für mehrere Szenarien.
  • Vereinfacht Vorlagen mit unterschiedlichen Layouts.

Verschachtelte & hierarchische Daten

  • Navigieren Sie Objektgraphen (z. B.,)., <<foreach:Order.Items>>).
  • Erstellt verschachtelte Tabellen/Listen mit Gruppierung + Bedingungen.

Benutzerdefinierte Funktionen & Erweiterbarkeit

  • Registriert Erweiterungsmethoden oder Handler für benutzerdefinierte Logik.
  • Führt spezialisierte Formatierungen und Transformationen durch.

Vorlagenvererbung

  • Definieren Sie Basistemplates und verwenden Sie sie in Kindtemplates wieder.
  • Bewahren Sie ein konsistentes Branding und einheitliche Stile.

Ereignisse & Rückrufe

  • Einbinden ReportBuildStarted, TagProcessed, ReportBuildFinished.
  • Logging hinzufügen, Diagramme/Bilder einfügen oder die Ausgabe dynamisch ändern.

Lokalisierung & Internationalisierung

  • Datums-, Zahlen- und Währungsformate nach Kultur formatieren.
  • Ressourcendateien für mehrsprachige Berichte integrieren.

FAQ

  1. Wie unterscheidet sich das von Mail Merge? LINQ Reporting verwendet Text-Tags und unterstützt LINQ-Ausdrücke, im Gegensatz zu herkömmlichen Mail Merge-Feldern.
  2. Welche Datenquellen werden unterstützt? XML, JSON, CSV, DataTables, Entity Framework und benutzerdefinierte .NET-Objekte.
  3. Kann ich Diagramme und Bilder einbetten? Ja. Vorlagen können Diagramme, Barcodes und aus Daten gefüllte Bilder enthalten.
  4. Welche Formate kann ich ausgeben? DOC, DOCX, RTF, DOT, DOTX, DOTM, DOCM, Word 2003 XML und Word 2007 XML.
  5. Unterstützt es die Lokalisierung? Ja. Kulturabhängige Formatierung und Ressourcenintegration werden unterstützt.
 Deutsch