ADO.NET 的最佳实践技巧

作者在 2006-06-05 02:16:00 发布以下内容

简介

本文为您提供了在 Microsoft ADO.NET 应用程序中实现和获得最佳性能、可伸缩性以及功能的最佳解决方案;同时也讲述了使用 ADO.NET 中可用对象的最佳实践;并提出一些有助于优化 ADO.NET 应用程序设计的建议。

本文包含:

有关 .NET 框架包含的 .NET 框架数据提供程序的信息。

DataSetDataReader 之间的比较,以及这些对象中每个对象最佳用法的解释。

解释如何使用 DataSetCommandsConnections

有关与 XML 集成的信息。

通用的技巧和问题。

使用 DataReader、DataSet、DataAdapter 和 DataView

ADO.NET 提供以下两个对象,用于检索关系数据并将其存储在内存中:DataSetDataReaderDataSet 提供一个内存中数据的关系表示形式,一整套包括一些表在内的数据(这些表包含数据、对数据进行排序并约束数据),以及表之间的关系。DataReader 提供一个来自数据库的快速、只进、只读数据流。

当使用 DataSet 时,经常会利用 DataAdapter(也可能是 CommandBuilder)与数据源进行交互。当使用 DataSet 时,也可以利用 DataViewDataSet 中的数据应用排序和筛选。也可以从 DataSet 继承,创建强类型 DataSet,用于将表、行和列作为强类型对象属性公开。

下列主题包括的信息涉及:使用 DataSetDataReader 的最佳时机、如何优化访问它们所包含数据、以及如何优化使用 DataAdapter(包括 CommandBuilder)和 DataView 的技巧。

DataSet 与 DataReader

当设计应用程序时,要考虑应用程序所需功能的等级,以确定使用 DataSet 或者是 DataReader

要通过应用程序执行以下操作,就要使用 DataSet

在结果的多个离散表之间进行导航。

操作来自多个数据源(例如,来自多个数据库、一个 XML 文件和一个电子表格的混合数据)的数据。

在各层之间交换数据或使用 XML Web 服务。与 DataReader 不同的是,DataSet 能传递给远程客户端。

重用同样的行组,以便通过缓存获得性能改善(例如排序、搜索或筛选数据)。

每行执行大量处理。对使用 DataReader 返回的每一行进行扩展处理会延长服务于 DataReader 的连接的必要时间,这影响了性能。

使用 XML 操作对数据进行操作,例如可扩展样式表语言转换(XSLT 转换)或 XPath 查询。

对于下列情况,要在应用程序中使用 DataReader

不需要缓存数据。

要处理的结果集太大,内存中放不下。

一旦需要以只进、只读方式快速访问数据。

填充 DataSet

ADO.NET学习 | 阅读 1688 次
文章评论,共0条
游客请输入验证码