基于标记的应用程序开发模型

ASP.NET 版本 2.0 带来了许多旨在增强 Crystal Reports for Visual Studio 的改进。其中最显著的改进之一就是,将对 ASPX 页中 XML 的使用扩展为完全基于标记的应用程序开发模型。

在 ASP.NET 的更早版本中,XML 标记的作用已经十分重要。

  • XML 标记在 ASPX 页中代表着可视的 .NET 控件。
  • 属性与每个标记之间的关联使得对基本设置的配置能够直接在 ASPX 页中进行。
  • 一些更复杂的控件会使用嵌套的标记,以进行详细配置。

在 ASP.NET 2.0 中,XML 已经被扩展成为完全基于标记的应用程序开发模型。此模型的关键组件是数据源框架:无需编写代码,完全通过基于标记的方法来访问数据库并与之交互。

在带有以下两项 GUI 创新的 ASP.NET 2.0 中,更加鼓励用户采用基于标记的应用程序开发模型:

  • 智能任务。

    向 Web 窗体添加 .NET 控件时会出现智能任务面板。智能任务使得配置功能更简单。在智能任务面板中做出的每项选择都会在 XML 控件标记中自动生成属性和嵌套标记信息。

  • DataSource 控件从“服务器资源管理器”窗口的拖放集成。

    将表从“服务器资源管理器”窗口拖放到 Web 窗体上时,会自动生成 DataGrid。通过与其关联的 DataSource 控件,DataGrid 已经预配置为能够显示相应数据库表的数据。这既能以图形化的方式(设计视图)查看,也能以基于文本的声明性 XML(源视图)查看。通过在智能任务面板中选择相应选项,能够轻松地修改 DataGrid,使用它来排序、编辑、更新或删除记录。之后,所有的数据更改都会传播回基础数据库表。

对 CrystalReportViewer 控件和 Crystal Reports 的影响

Crystal Reports 通过使用新的 CrystalReportSource 控件(该控件实现 DataSource 控制框架)来利用基于标记的应用程序开发模型。CrystalReportSource 控件封装了 Crystal 报表。

Note注意

有关 CrystalReportSource 控件的更多信息,请参见 “CrystalReportSource 控件”

当使用基于标记的应用程序开发模型时,CrystalReportViewer 控件将通过在智能任务面板中所做的选择与 CrystalReportSource 控件关联。这些选择将在为 ASPX 页生成的 XML 标记中表示。

Note注意

CrystalReportViewer 控件与 CrystalReportSource 控件的新关系反映了用于 DataGrid 控件(或任何其他 .NET 可视控件)和 SqlDataSource 控件的结构。

其他开发模型

在 ASP.NET 2.0 中,基于标记的应用程序开发模型是可选框架。一些开发人员可能更愿意使用编码开发模型以获得最大的配置灵活性以及可扩展性。在这种情况下,请仅使用 ASP.NET 1.0 版的标记模型,并在代码隐藏类中编写代码以处理相应功能。

Note注意

在 ASP.NET 2.0 中,由于对页结构的一项更改,与 ASPX 页关联的类现在被称为代码隐藏类。ASPX 页以及它的相关类不是重新配置为代码隐藏类(作为 ASPX 页的基类),而是重新配置为一个单独类的两段,并作为一个类在对象浏览器中提供。之所以可以这样拆分,是因为 .NET Framework 2.0 版中的新功能:不完全类。