Home - majorsilence/Reporting GitHub Wiki
Welcome to the Majorsilence Reporting (formerly My-FyiReporting) wiki.
Introduction
Majorsilence Reporting is a powerful, open-source .NET reporting framework designed for developers who need to create, design, and deliver rich, reports. Supporting modern .NET versions (8.0), it provides a flexible and extensible platform for building reports from a variety of data sources. With a drag-and-drop designer, multiple viewer options, and cross-platform support, Majorsilence Reporting is ideal for both desktop and web applications. Whether you need to generate reports programmatically or empower users with a visual designer, this project offers the tools and documentation to get you started quickly.
The core of Majorsilence Reporting supports Linux and macOS for server-side application report generation. Only the WinForms-based designer and viewer are Windows-only.
For a more technical introduction please see the main project page.
- Active project? Yes, it's still maintained and developed as of 2025.
- Licence - is it totally free?
- Support - there is a Google Group and GitHub Discussions page.
Quick start
using Majorsilence.Reporting.RdlCreator;
// One time per app instance
RdlEngineConfig.RdlEngineConfigInit();
string dataProvider = "[PLACEHOLDER/Json/Microsoft.Data.SqlClient/MySQL.NET/Firebird.NET 2.0/Microsoft.Data.Sqlite/PostgreSQL";
var create = new Majorsilence.Reporting.RdlCreator.Create();
var report = await create.GenerateRdl(dataProvider,
connectionString,
"SELECT CategoryID, CategoryName, Description FROM Categories",
pageHeaderText: "DataProviderTest TestMethod1");
string filepath = System.IO.Path.Combine(Environment.CurrentDirectory, "PLACEHOLDER.pdf");
var ofs = new Majorsilence.Reporting.Rdl.OneFileStreamGen(filepath, true);
await report.RunGetData(null);
await report.RunRender(ofs, Majorsilence.Reporting.Rdl.OutputPresentationType.PDF);
Index Page
Majorsilence Reporting Wiki contents page.
Screenshots
Configuration and Setup
- Required References
- Database Providers
- Json Data Provider
- PostgreSQL Connection
- Microsoft SQL 2019/2022/2025 Connection
- Microsoft SQL Compact Edition Connections - legacy v4 branch only
- OLEDB and Microsoft Access
- Downloads
- Linux - PDF export and Fonts
- Localization
RdlCmd
Reporting Server
Code
- Pass a Datatable to Report (from c#)
- Change sql string from code
- Pass an Image to report (from c#)
- Embed the designer in your own application (c# and vb)
- Winform Majorsilence Reporting Viewer(c#)
- Report Viewer Events
- WPF Majorsilence Reporting Viewer (c#)
- GTK# Majorsilence Reporting Viewer (c#)
- Set Connection String - Runtime
- Report Designer Control
- Hyperlink Custom Action - .NET Viewer Control
- Generate report and export pdf without GUI
- Code First Reports and Documents
Source Code
Windows Only
Report Designer (Windows Only)
Report Viewer (Windows Only)
ASP.NET (Windows Only)
- ASP.NET Report Control - net48 - v4 branch
Examples (Windows Only)
- Dynamic Connection String
- Set report data from code
- ASP.NET Control - net48
- Designer Control - Wpf and Winform
- Sample Report Viewer with tool strip
User interface tutorials
ReportingCloud (another fork) has made some tutorials for using the designer and creating reports. http://sourceforge.net/projects/reportingcloud/files/