RdlcRptGenLite – Automatischer RDLC-Bericht in C# direkt aus der DataTable
Sie laden eine ZIP-Datei mit Quellcode (
RdlcRptGenLite.cs), Demo-Form und dänischer Anleitung herunter. Die Klasse darf frei genutzt und unter der MIT-Lizenz weitergegeben werden.
RdlcRptGenLite ist eine weiterentwickelte und vereinfachte Version des beliebten (aber inzwischen verschwundenen) RdlcRptGen-Projekts. Die Klasse ist in C# geschrieben und ermöglicht es, einen voll funktionsfähigen RDLC-Bericht direkt aus einer DataTable zu generieren – ohne den Berichtdesigner von Visual Studio. Sie können den Bericht mit nur einer einzigen Codezeile in einem ReportViewer anzeigen.
Mit RdlcRptGenLite entfällt die Vorabkonfiguration des Berichtsdesigns – die Klasse erzeugt die RDLC-XML-Definitionsdatei automatisch anhand der Struktur Ihrer DataTable und zeigt den Bericht direkt an.
Funktionen und Einsatz
- RDLC-Berichte dynamisch erzeugen: Basierend auf Spalten und Zeilen einer
DataTable. - Benutzerfreundliche Integration: Kann mit nur einer Codezeile verwendet werden: csharpKopierenBearbeiten
new RdlcRptGenLite(myDataTable).DisplayReport(); - Anzeige über ReportViewer: Unterstützt die Standard-
ReportViewer-Steuerung in Windows Forms. - Konfigurierbare Elemente: Neben der Standardansicht können Sie zusätzliche Eigenschaften setzen, z. B. Berichtstitel, Schriftart, Tabellenfarben und Seitenlayout.
Beispiel zur Verwendung
csharpKopierenBearbeitenRdlcRptGenLitereport = newRdlcRptGenLite(myDataTable);
report.ReportTitle = "Umsatzzahlen für Q2";
report.FontName = "Segoe UI";
report.DisplayReport(); // Zeigt den Bericht in einem Standard-ReportViewer-Formular an
Vorteile für Entwickler
RdlcRptGenLite ist ideal für Entwickler, die mit Geschäftsdaten, Backend-Berichten, Statistiken oder administrativen Systemen arbeiten, in denen dynamische Berichte schnell und unkompliziert erzeugt werden müssen – ohne aufwendige Integration oder externen Berichtsdesigner.
Sie laden eine ZIP-Datei mit Quellcode (
RdlcRptGenLite.cs), Demo-Form und dänischer Anleitung herunter. Die Klasse darf frei genutzt und unter der MIT-Lizenz weitergegeben werden.
Top 5 Tipps zu RdlcRptGenLite
Starten Sie mit einer einfachen DataTable
RdlcRptGenLite funktioniert am besten mit einer einfachen, flachen Struktur. Vermeiden Sie komplexe Typen wie verschachtelte Objekte, DataRelation-Abhängigkeiten oder spezialisierte Klassen. Verwenden Sie stattdessen gewöhnliche Spalten mit string, int, decimal, DateTime usw. Das gewährleistet eine fehlerfreie Generierung der internen RDLC-XML und eine saubere Tabellenansicht.
Tipp: Sie können ggf. die Spaltennamen in Ihrer
DataTable.Columns[i].ColumnNameanpassen, um bessere Überschriften im Bericht zu erhalten.
Berichtsdesign anpassen
RdlcRptGenLite unterstützt mehrere nützliche Eigenschaften, mit denen Sie das Erscheinungsbild des Berichts anpassen können, ohne eine RDLC-Datei manuell zu bearbeiten:
ReportTitle: Fügt eine Überschrift oben im Bericht hinzu.FontName: Wechseln Sie z. B. zu Segoe UI, Verdana oder Ihrer bevorzugten Schriftart.TableHeaderBackColor: Ändert die Hintergrundfarbe der Spaltenüberschriften.PageOrientation: Wählen Sie zwischen Hoch- oder Querformat.
Tipp: Kombinieren Sie mehrere Eigenschaften, um die visuelle Identität Ihres Unternehmens zu treffen.
Mit ReportViewer in Windows Forms verwenden
Damit der Bericht korrekt angezeigt wird, muss Microsoft.ReportViewer.WinForms über NuGet oder als Referenz installiert sein. RdlcRptGenLite öffnet ein neues Formular mit dem ReportViewer und zeigt den Bericht automatisch an – es ist kein zusätzlicher GUI-Code erforderlich.
Tipp: Wenn Sie .NET Framework 4.7 oder neuer verwenden, stellen Sie sicher, dass die passende Version des ReportViewer kompatibel ist.
Bericht als XML speichern
Möchten Sie den dynamisch erzeugten Bericht als RDLC-Datei für die spätere Nutzung oder Bearbeitung speichern? Verwenden Sie:
csharpKopierenBearbeitenstring rdlcXml = report.GetRdlcXml();File.WriteAllText("MeineBericht.rdlc", rdlcXml);Das ist eine effiziente Methode, um Laufzeitberichte in persistente Design-Dateien zu konvertieren.
Tipp: Sie können die gespeicherte .rdlc-Datei in Visual Studio öffnen und das Layout bei Bedarf grafisch verfeinern.
Mit DataSets für erweiterte Funktionen kombinieren
Obwohl RdlcRptGenLite die DataTable als primäre Eingabe nutzt, können Sie problemlos Tabellen aus einem DataSet beziehen und weitergeben:
csharpKopierenBearbeitennewRdlcRptGenLite(myDataSet.Tables["Bestelldaten"]).DisplayReport();
So können Sie mit mehreren Datenquellen arbeiten und dennoch das einfache Interface nutzen.
Tipp: Erstellen Sie eine Wrapper-Methode, die je nach Benutzereingaben oder Geschäftslogik automatisch die relevanten Tabellen auswählt.



