【发布时间】:2020-07-29 06:52:23
【问题描述】:
在 .NET 中,我认为我们不能使用 RDLC、Crystal 报告等。还有其他可以用于 .NET Core 的报告工具吗? 我想创建可以通过添加徽标和其他东西来设计的报告,以及可以通过动态传递参数生成的报告。 任何的想法?我看到了一些关于我认为是开源的 Fast Report 的帖子。 你有什么推荐的?
【问题讨论】:
标签: asp.net-mvc .net-core report
在 .NET 中,我认为我们不能使用 RDLC、Crystal 报告等。还有其他可以用于 .NET Core 的报告工具吗? 我想创建可以通过添加徽标和其他东西来设计的报告,以及可以通过动态传递参数生成的报告。 任何的想法?我看到了一些关于我认为是开源的 Fast Report 的帖子。 你有什么推荐的?
【问题讨论】:
标签: asp.net-mvc .net-core report
我在我的 .Net 5 应用程序(asp.net 核心)中使用 FastReports,我在我的 Delphi Windows 应用程序中使用 FastReports。
FastReport 有一个开源版本和一个 FastReport.Net 版本。我目前正在使用开源版本进行报告、快速代码和 pdf 导出(开源版本让您保存为 PDF,而 .NET 版本具有更多 PDF 功能。)考虑到我从版本开始就一直在使用 asp.net Core 1,与有限的选项相比,这是一个很好的解决方案。我动态地创建报告和传递选项。
【讨论】:
考虑将报告请求与生成和加载/发送结果以供用户访问的过程分离。
报告请求可以由您的 asp .net 核心应用程序通过将请求(报告、参数、导出格式、打印机、电子邮件...)写入数据库或队列文件夹中的文件来完成。
然后可以通过您编写的单独应用或现有的第 3 方工具来处理报告生成。对于 Crystal Reports,here) 是此类第三方工具的列表。其中一些已经具有通过数据库或文件夹队列监控报告请求的实用程序。
根据您的情况,然后可以将输出打印、通过电子邮件发送或导出为各种文件格式(pdf、html、excel、...)。您的 .net 核心应用可以加载这些导出的文件以供用户查看,或者只是将请求视为已完成。
此模式的一个缺点是用户无法使用 Crystal 查看器功能(例如向下钻取和按需子报表)与屏幕上的报表进行交互。但是,这些 3rd 方工具中的一些具有一些导出格式(pdf 向下钻取、html 向下钻取、excel 自动过滤器、数据透视表、切片器...)提供了类似的功能。
【讨论】: