今天,我们将详细分析从代码中导出仪表板及其元素的过程。此外,我们将从可用的导出格式开始讨论。
Stimulsoft Ultimate (原Stimulsoft Reports.Ultimate)是用于创建报表和仪表板的通用工具集。该产品包括用于WinForms、ASP.NET、.NET Core、JavaScript、WPF、PHP、Java和其他环境的完整工具集。无需比较产品功能,Stimulsoft Ultimate包含了所有内容!
Stimulsoft Reports.Ultimate不仅拥有强大的报表导出系统,而且还支持多种报表导出格式,拥有简单且强大的报表引擎。Stimulsoft Reports.Ultimate基本原则是,用简单常规的方法创建报表,将不同的技术应用于应用程序。
Stimulsoft Reports官方正版下载https://www.evget.com/product/2398/download
可用的导出格式
我们的产品为在不同平台上编写的应用程序提供了一系列导出格式。例如,在 JavaScript 和 PHP 应用程序中,您可以将仪表板或其元素导出为 HTML、MS Excel 和 PDF。对于其他平台,可以选择导出为各种图像格式,包括 PNG、JPEG、SVG、BMP 等。此外,我们的所有产品都提供将仪表板导出到 JSON、XML、CSV 等数据文件的功能。
将仪表板导出到 WIN/WPF 应用程序
要从 Windows 应用程序导出呈现的仪表板,只需使用以下代码片段:
private void Button1_Click(object sender, EventArgs e) { var report = StiReport.CreateNewDashboard(); report.Load("Reports\\Vehicle_Production.mrt"); report.ExportDocument(StiExportFormat.Pdf, "Vehicle_Production.pdf"); }
在此示例中,将以 PDF 格式执行导出并保存到指定文件。ExportDocument方法将整个仪表板导出为指定格式,结果可以是文件、流或字节数组。
要修改导出设置,只需将设置类作为参数传递给指定的方法:
private void Button1_Click(object sender, EventArgs e) { var report = StiReport.CreateNewDashboard(); report.Load("Reports\\Vehicle_Production.mrt"); var settings = new StiPdfDashboardExportSettings(); report.ExportDocument(StiExportFormat.Pdf, "Vehicle_Production.pdf"); }
将仪表板导出到 Web 应用程序
要从 Web 应用程序中的代码导出仪表板,您可以使用与上述 Windows 应用程序相同的方法。但是,在这种情况下,导出的仪表板将保存在服务器端。
如果您希望使用 Web 浏览器将导出的仪表板加载到客户端计算机上,则需要使用以下代码(以下是 ASP.NET 应用程序的示例):
protected void ButtonExport_Click(object sender, EventArgs e) { var report = StiReport.CreateNewDashboard(); var path = Server.MapPath("Reports/Vehicle_Production.mrt"); report.Load(path); StiReportResponse.ResponseAsPdf(report); }
StiReportResponse类包含将仪表板导出为各种格式所需的所有方法。导出设置可以作为参数传递。
对于使用 ASP.NET MVC 开发的 Web 应用程序,提供了StiMvcReportResponse类;对于基于 .NET Core 的 Web 应用程序,可以使用StiNetCoreReportResponse类。这些类共享相同的方法集。
导出仪表板元素
可能会出现这样的情况:您只需要导出仪表板的一部分(即仪表板的特定元素)。以下是导出仪表板表的代码示例:
private void Button1_Click(object sender, EventArgs e) { var report = StiReport.CreateNewDashboard(); report.Load("Reports\\Vehicle_Production.mrt"); var element = report.GetComponentByName("TableList") as IStiElement; var settings = new StiPdfDashboardExportSettings(); //var stream = StiDashboardExportTools.ExportToStream(element, settings); StiDashboardExportTools.ExportToFile(element, "d:\TableList.pdf", settings); }
在此示例中,根据名称从仪表板中选择元素并将其导出到 PDF 文件。在这种情况下,导出格式取决于传递给仪表板元素导出方法的设置。此外,StiDashboardExportTools类包含导出到流或字节数组的方法。
导出包含多行信息的单个仪表板元素(例如表格或列表)时,元素的所有行将完全扩展到所需数量的页面。导出整个仪表板时,将显示适合仪表板布局的行数,适合指定大小的一页。