无法使用 ASP.NET Core 在 RLDC 报告中生成多个 Excel 工作表选项卡

问题描述 投票:0回答:1

我有一个 APS.NET Core Web API 应用程序。我可以从我的应用程序生成 Excel 文件,但无法导出具有多个 Excel 工作表(例如sheet1、sheet2)的 Excel 文件。

我想实现如下图所示的效果。

有没有办法在我的应用程序中使用多张表使用 rdlc 生成 excel 文件? 您与该主题相关的任何建议对我来说都非常重要。

提前致谢。

c# asp.net-core rdlc
1个回答
0
投票

要使用 RDLC 生成多个工作表,您可以使用以下代码:

首先,您必须安装 nuget 包,即“AspNetCore.Reporting”,它将帮助您创建 RDLC 报告。在报表设计器(如 Visual Studio 提供的报表设计器)中设计 RDLC 报表,指定数据集和布局。您通常会为要生成的每个 Excel 工作表创建子报告或不同的报告部分。组织您计划包含在 Excel 文件中的每个工作表的数据。每个工作表的数据将作为单独的数据集传递到报告。

[HttpGet("export")]
public IActionResult ExportReport()
{
    var definition = System.IO.File.ReadAllText("PathToYourReport.rdlc");

    var dataSet1 = GetYourFirstDataSet();
    var dataSet2 = GetYourSecondDataSet();

    var report = new LocalReport();
    report.LoadReportDefinition(new StringReader(definition));

    report.DataSources.Add(new ReportDataSource("DataSet1", dataSet1));
    report.DataSources.Add(new ReportDataSource("DataSet2", dataSet2));


    var result = report.Execute(RenderType.Excel, 1, null, "");

    return File(result.MainStream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "report.xlsx");
}
© www.soinside.com 2019 - 2024. All rights reserved.