【发布时间】:2010-05-13 08:55:17
【问题描述】:
我需要提供从 .NET 应用程序查看和打印报告的能力。但我需要能够修改报告模板而无需重新编译应用程序。我看到有两个选项:
- 使用报告组件,例如
Microsoft.Reporting或Crystal Reports使用.rpt(或类似的)文件 可以根据需要修改,无需 必须重新编译应用程序 - 使用
System.Drawing.Printing并将模板数据存储在数据库中,这样可以让事情变得更简单 并避免庞大的报告组件问题
选项 1 是否有效,是否避免了重新编译应用程序的需要?
选项 2 可行吗?您将如何将模板数据存储在数据库中,以便在无需重新编译应用程序的情况下对其进行修改?
编辑:使用选项 1,您是否需要在编译之前定义“数据源”?
【问题讨论】:
-
您需要明确您的术语。 “Microsoft Reports Technology”包含在
Microsoft.Reporting命名空间中。ReportViewer是一个用于查看“Microsoft Report Documents”的控件。这些报告文档是 XML 文件。 -
考虑看一下 FastReports,它可以按照您在第 1 点中的建议使用,因为报告不必编译并可以作为资源加载。我还发现它比 Crystal 更好用。
-
FastReports 的费用是多少?