数据层组件设计与数据传递7

时间:2010-02-02 08:29:55  来源:第二电脑网  作者:第二电脑网

  第二电脑网导读:种数据通常来自数据库中的多个相关表。   业务实体数据可以作为业务过程的部分 I/O 参数传递。   业务实体可以是可序列化的,以保持它们的当前状态。例如,应用程序可能需要在本地磁盘、桌面数据库(如果应用程序脱机工作)或消息队列消息中存储实体数据。   业务实体不直接访问数据库。全部数据库访问都是由相关联的数据访问逻辑组件提...
  正文:实现业务实体
  
    业务实体具有以下特点:
  
  业务实体提供对业务数据及相关功能(在某些设计中)的状态编程访问。
  业务实体可以使用具有复杂架构的数据来构建。这种数据通常来自数据库中的多个相关表。
  业务实体数据可以作为业务过程的部分 I/O 参数传递。
  业务实体可以是可序列化的,以保持它们的当前状态。例如,应用程序可能需要在本地磁盘、桌面数据库(如果应用程序脱机工作)或消息队列消息中存储实体数据。
  业务实体不直接访问数据库。全部数据库访问都是由相关联的数据访问逻辑组件提供的。
  业务实体不启动任何类型的事务处理。事务处理由使用业务实体的应用程序或业务过程来启动。
    如本文前面所述,在您的应用程序中表示业务实体的方法有很多(从以数据为中心的模型到更加面向对象的表示法):
  
  XML
  通用 DataSet
  有类型的 DataSet
  自定义业务实体组件
  带有 CRUD 行为的自定义业务实体组件
    以下各节将介绍如何使用这些格式来表示业务实体。为帮助您确定特定环境中最适宜的业务实体表示,以下各节将介绍如何为各业务实体格式执行以下任务:
  
  组织业务实体集合
  将业务实体数据绑定到用户界面控件
  序列化业务实体数据
  在层间传递业务实体数据
    以下各节还针对非功能性要求(包括性能、效率、可缩放性和可扩展性)考虑了每种业务实体表示的适用性。
  
    将业务实体表示为 XML
    以下示例显示了如何将一个简单的业务实体表示为 XML。该业务实体包含一个产品。
  
  <?xml version="1.0"?>
  <Product xmlns="urn:aUniqueNamespace">
  <ProductID>1</ProductID>
  <ProductName>Chai</ProductName>
  <QuantityPerUnit>10 boxes x 20 bags</QuantityPerUnit>
  <UnitPrice>18.00</UnitPrice>
  <UnitsInStock>39</UnitsInStock>
  <UnitsOnOrder>0</UnitsOnOrder>
  <ReorderLevel>10</ReorderLevel>
  </Product>
  
    当使用 XML 表示业务实体数据时,请考虑以下原则:
  
  确定 XML 文档是包含单个业务实体还是包含一个业务实体集合。前面的示例表示的是单个 Product 业务实体。
  使用一个命名空间唯一标识该 XML 文档,以避免与其他 XML 文档的内容发生命名冲突。前面的示例使用名为 urn:aUniqueNamespace 的默认命名空间。
  为元素和属性选择合适的名称。前面的示例使用 Product 表的列名称,但并不要求一定这样。可以选择对您的应用程序有意义的名称。
  使用以下方法之一以 XML 格式检索您的业务实体:
  如果您使用的是 SQL Server 2000,则可以在查询或存储过程中使用 FOR XML 子句。在性能测试中,使用 FOR XML 只比返回 DataSet 稍微快一点。
  检索 DataSet 并将其转换为 XML 流或以 XML 流的格式写出。这种方法会带来创建 DataSet 的系统开销和额外的转换开销(如果执行转换)。
  使用输出参数或数据读取器构建一个 XML 文档。数据读取器是从数据库检索多个行的最快方法,但与构建 XML 相关联的过程可能会减弱这种性能优势。
    将业务实体表示为 XML 的优点如下:
  
  标准支持。XML 是 World Wide Web Consortium (W3C) 的标准数据表示格式。
  灵活性。XML 能够表示信息的层次结构和集合。
  互操作性。在所有平台上,XML 都是与外部各方及贸易伙伴交换信息的理想选择。如果 XML 数据将由 ASP/ target=_blank class=infotextkey>asp.net 应用程序或 Windows 窗体应用程序使用,则还可以把这些 XML 数据装载到一个 DataSet 中,以利用 DataSet 提供的数据绑定支持。
    将业务实体表示为 XML 的缺点如下:
  
  类型保真。XML 不支持类型保真。然而,对于简单的数据分类可以使用 XSD 架构。
  验证 XML。要验证 XML,可以手动分析代码,或者使用 XSD 架构。但这两种方法都比较慢。
  显示 XML。您不能将 XML 数据自动显示在用户界面上。可以编写一个 XSLT 样式表将数据转换为 DataSet;但样式表的编写比较麻烦。另一种方法是通过样式表将 XML 转换为 HTML 等可显示格式。
数据层组件设计与数据传递7》由第二电脑网原创提供,转载请注明:http://www.002pc.com/master/College/Programming/aspnet/12733.html


关键字:

关于《数据层组件设计与数据传递7》文章的评论

站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td