推荐方案摘要

为帮助您为应用程序选择最佳报表绑定方案,本节总结了各种推荐方案的优缺点,并说明了一些方案更常用的原因。

Note注意

大多数网站或 Windows 项目可以依赖两种最简单的绑定方案:绑定到嵌入式或非嵌入式报表(教程中会逐步说明这两种方案)。因此,在阅读本节之前,请尽力完成“教程”中的一个教程。

适合 Crystal Reports 的推荐绑定方案

在使用 ReportDocument 对象模型绑定报表和使用 CrystalReportViewer 对象模型绑定报表这两种方案中,通常推荐采用前者。(请参见“通过 ReportDocument 对象模型进行报表绑定”“通过 CrystalReportViewer 对象模型进行报表绑定”。)这是因为 ReportDocument 对象模型提供了更多的 API 用于通过编程方式与报表进行交互。有关对象模型的更多信息,请参见“应该使用哪种对象模型?”

大多数 Crystal Reports for Visual Studio 用户都愿意使用“绑定到嵌入式报表类”这一方案。虽然这个方案不是优化性能的最佳选择,但它是最简单的方法:将报表添加到项目中以创建报表包装类,实例化报表包装类,然后将其传递给 CrystalReportViewer 控件。由于报表包装类继承自 ReportDocument 基类,因此可以使用 ReportDocument 对象模型的全部功能。

“绑定到已加载到 ReportDocument 类中的非嵌入式报表”中描述了在 Crystal Reports for Visual Studio 中绑定报表的另一种常见方式。采用这种方法,将可以使用 ReportDocument 对象模型的全部功能,而且这种方法还具有非嵌入式报表的优点,因此无需重新编译应用程序就可以对报表进行修改。

一些绑定方案使用 ASP.NET Cache 对象(请参见“ 绑定到缓存的嵌入式报表类 ”“绑定到已加载到缓存管理实用程序类的非嵌入式报表”)。这些方案为具有高可共享性的报表优化性能。请参见“缓存具有“高可共享性”的报表”

适合报表应用程序服务器(RAS)的推荐绑定方案

如果在 Crystal Reports for Visual Studio 应用程序中添加了非托管报表应用程序服务器(请参见“报表应用程序服务器(RAS)”)许可,则将获得额外的功能:

  • 增强的可伸缩性(由 RAS 报表引擎提供)
  • 可以访问 ReportClientDocument 对象模型,该模型提供了大量用于修改报表的功能。

对于 RAS,可以使用三种报表绑定方案,具体应使用哪一种取决于如何配置项目。

Crystal Reports Server 或 BusinessObjects Enterprise 的推荐绑定方案

如果已经升级到 Crystal Reports Server 或 BusinessObjects Enterprise,则可以使用四个推荐的报表绑定方案。应使用哪种方案取决于对报表修改和可伸缩性的要求:

阅读完本节后,您可能想要查看所有方案的详细列表,以完整地浏览 SDK 中的所有可用选项。请参见“所有方案的详细列表”

请参见