ado.net 的最佳实践技巧

ado.net 的最佳实践技巧

ID:26637985

大小:151.50 KB

页数:13页

时间:2018-11-28

ado.net 的最佳实践技巧_第1页
ado.net 的最佳实践技巧_第2页
ado.net 的最佳实践技巧_第3页
ado.net 的最佳实践技巧_第4页
ado.net 的最佳实践技巧_第5页
资源描述:

《ado.net 的最佳实践技巧》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、这是我很早以前看过的微软的一篇文章,最近,一些网友问的问题很多理论都在里面,所以,整理一下放在这里,大家可以参考一下。简介本文为您提供了在MicrosoftADO.NET应用程序中实现和获得最佳性能、可伸缩性以及功能的最佳解决方案;同时也讲述了使用ADO.NET中可用对象的最佳实践;并提出一些有助于优化ADO.NET应用程序设计的建议。本文包含:•有关.NET框架包含的.NET框架数据提供程序的信息。•DataSet 和 DataReader 之间的比较,以及这些对象中每个对象最佳用法的解释。•解释如何使用 DataSet、Commands 和 Connections。•有关与XML集成的信息

2、。•通用的技巧和问题。使用DataReader、DataSet、DataAdapter和DataViewADO.NET提供以下两个对象,用于检索关系数据并将其存储在内存中:DataSet 和 DataReader。DataSet 提供一个内存中数据的关系表示形式,一整套包括一些表在内的数据(这些表包含数据、对数据进行排序并约束数据),以及表之间的关系。DataReader 提供一个来自数据库的快速、只进、只读数据流。当使用 DataSet 时,经常会利用 DataAdapter(也可能是 CommandBuilder)与数据源进行交互。当使用 DataSet 时,也可以利用 DataView 

3、对 DataSet 中的数据应用排序和筛选。也可以从 DataSet 继承,创建强类型 DataSet,用于将表、行和列作为强类型对象属性公开。下列主题包括的信息涉及:使用 DataSet 或 DataReader 的最佳时机、如何优化访问它们所包含数据、以及如何优化使用 DataAdapter(包括 CommandBuilder)和 DataView 的技巧。DataSet与DataReader当设计应用程序时,要考虑应用程序所需功能的等级,以确定使用 DataSet 或者是 DataReader。要通过应用程序执行以下操作,就要使用 DataSet:•在结果的多个离散表之间进行导航。•操作

4、来自多个数据源(例如,来自多个数据库、一个XML文件和一个电子表格的混合数据)的数据。•在各层之间交换数据或使用XMLWeb服务。与 DataReader 不同的是,DataSet 能传递给远程客户端。•重用同样的行组,以便通过缓存获得性能改善(例如排序、搜索或筛选数据)。•每行执行大量处理。对使用 DataReader 返回的每一行进行扩展处理会延长服务于 DataReader 的连接的必要时间,这影响了性能。•使用XML操作对数据进行操作,例如可扩展样式表语言转换(XSLT转换)或XPath查询。对于下列情况,要在应用程序中使用 DataReader:•不需要缓存数据。•要处理的结果集太大

5、,内存中放不下。•一旦需要以只进、只读方式快速访问数据。注填充 DataSet 时,DataAdapter 使用 DataReader。因此,使用 DataAdapter 取代 DataSet 提升的性能表现为节省了 DataSet 占用内存和填充 DataSet 需要的循环。一般来说,此性能提升只是象征性的,因此,设计决策应以所需功能为基础。使用强类型DataSet的好处DataSet 的另一个好处是可被继承以创建一个强类型 DataSet。强类型 DataSet 的好处包括设计时类型检查,以及MicrosoftVisualStudio.NET用于强类型 DataSet 语句结束所带来的好处

6、。修改了 DataSet 的架构或关系结构后,就可以创建一个强类型 DataSet,把行和列作为对象的属性公开,而不是作为集合中的项公开。例如,不公开客户表中行的姓名列,而公开 Customer 对象的 Name 属性。类型化 DataSet 从 DataSet 类派生,因此不会牺牲 DataSet 的任何功能。也就是说,类型化 DataSet 仍能远程访问,并作为数据绑定控件(例如DataGrid)的数据源提供。如果架构事先不可知,仍能受益于通用 DataSet 的功能,但却不能受益于强类型 DataSet 的附加功能。处理强类型DataSet中的空引用使用强类型 DataSet 时,可以批

7、注 DataSet 的XML架构定义语言(XSD)架构,以确保强类型 DataSet 正确处理空引用。nullValue批注使您可用一个指定的值String.Empty代替DBNull、保留空引用或引发异常。选择哪个选项取决于应用程序的上下文。默认情况下,如果遇到空引用,就会引发异常。有关更多信息,请参阅 WorkingwithaTypedDataSet。刷新DataSet中的数据如果想用服务器上

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。