RdlcRptGenLite – Automatisk RDLC-rapport i C# direkte fra DataTable
Du downloader en ZIP-fil med både kildekode (
RdlcRptGenLite.cs), demoform og dansk vejledning. Klassen er fri at bruge og distribuere under MIT-licens.
RdlcRptGenLite er en videreudviklet og forenklet version af det populære (men nu forsvundne) RdlcRptGen-projekt. Klassen er skrevet i C# og gør det muligt at generere en fuldt fungerende RDLC-rapport direkte fra en DataTable – uden brug af Visual Studios rapportdesigner. Du kan vise rapporten i en ReportViewer med blot én linje kode.
Ved at bruge RdlcRptGenLite slipper du for at konfigurere rapportdesignet på forhånd – klassen genererer RDLC XML-rapportdefinitionen automatisk baseret på strukturen i din DataTable, og viser rapporten direkte.
Funktioner og anvendelse
- Generér RDLC-rapporter dynamisk: Baseret på kolonner og rækker i en
DataTable. - Brugervenlig integration: Kan bruges med blot én linje kode: csharpKopiérRediger
new RdlcRptGenLite(myDataTable).DisplayReport(); - Visning via ReportViewer: Understøtter standard
ReportViewer-kontrol i Windows Forms. - Konfigurerbare elementer: Udover standardvisning kan du sætte ekstra egenskaber som f.eks. rapporttitel, skrifttype, tabelfarver og sideopsætning.
Eksempel på brug
csharpKopiérRedigerRdlcRptGenLitereport = newRdlcRptGenLite(myDataTable);
report.ReportTitle = "Salgstal for Q2";
report.FontName = "Segoe UI";
report.DisplayReport(); // Viser rapporten i en standard ReportViewer-form
Fordele for udviklere
RdlcRptGenLite er ideel til udviklere, der arbejder med forretningsdata, backend-rapporter, statistik, eller administrative systemer, hvor dynamiske rapporter skal genereres hurtigt og nemt – uden tung integration eller ekstern rapportdesigner.
Du downloader en ZIP-fil med både kildekode (
RdlcRptGenLite.cs), demoform og dansk vejledning. Klassen er fri at bruge og distribuere under MIT-licens.
Top 5 tips til RdlcRptGenLite
Start med en simpel DataTable
RdlcRptGenLite fungerer bedst med en enkel og flad struktur. Undgå komplekse typer som nested objekter, DataRelation-afhængigheder eller specialiserede klasser. Brug i stedet almindelige kolonner med string, int, decimal, DateTime osv. Det sikrer en fejlfri generering af den interne RDLC XML og en pæn tabelform i visningen.
Tip: Du kan evt. tilpasse kolonnenavne i din
DataTable.Columns[i].ColumnNamefor at få bedre overskrifter i rapporten.
Tilpas rapportdesignet
RdlcRptGenLite understøtter flere nyttige egenskaber, der lader dig tilpasse rapportens udseende uden at redigere en RDLC-fil manuelt:
ReportTitle: Tilføjer en overskrift øverst på rapporten.FontName: Skift til f.eks. Segoe UI, Verdana eller din foretrukne skrifttype.TableHeaderBackColor: Ændr baggrundsfarve på kolonneoverskrifter.PageOrientation: Vælg mellem stående eller liggende layout.
Tip: Kombinér flere egenskaber for at matche dit firmas visuelle identitet.
Brug med ReportViewer i Windows Forms
For at vise rapporten korrekt, skal Microsoft.ReportViewer.WinForms være installeret via NuGet eller som reference. RdlcRptGenLite åbner en ny form med ReportViewer og viser rapporten automatisk – det kræver ikke yderligere GUI-kode.
Tip: Hvis du bruger .NET Framework 4.7 eller nyere, skal du sikre dig, at den korrekte version af ReportViewer er kompatibel.
Gem rapport som XML
Vil du gemme den dynamisk genererede rapport som en RDLC-fil til senere brug eller redigering? Brug:
csharpKopiérRedigerstring rdlcXml = report.GetRdlcXml();
File.WriteAllText("MinRapport.rdlc", rdlcXml);
Det er en effektiv måde at konvertere runtime-rapporter til vedvarende designfiler.
Tip: Du kan åbne den gemte .rdlc-fil i Visual Studio og finjustere layoutet grafisk, hvis nødvendigt.
Kombinér med DataSets for avanceret funktionalitet
Selvom RdlcRptGenLite bruger DataTable som primær input, kan du sagtens hente tabeller fra et DataSet og sende dem videre:
csharpKopiérRedigernewRdlcRptGenLite(myDataSet.Tables["OrdreData"]).DisplayReport();
Det gør det muligt at arbejde med flere datakilder og stadig bruge det enkle interface.
Tip: Du kan lave en wrapper-metode, der automatisk vælger relevante tabeller ud fra brugerinput eller forretningslogik.



