使用DataReader、DataSet、DataAdapter和DataViewADO.NET提供两个对象用于检索关系型数据并把它存储在内存中,分别是DataSet和DataReader。DataSet提供内存中关系数据的表现--包括表和次序、约束等表间的关系的完整数据集合。DataReader提供快速、只向前、只读的来自数据库的数据流。使用DataSet时,一般使用DataAdapter(也可能是CommandBuilder)与数据源交互,用DataView对DataSet中的数据进行排序和过滤。DataSet可以被继承来建立强化类型的DataSet,用于暴露表、行、列作为强化类型对象属性。下面的内容包含什么时候使用DataSet或DataReader,以及怎样优化访问它们所包含的数据,也包括怎样优化DataAdapter和DataView的使用(也包括CommandBuilder)。DataSet与DataReader的对比 在设计应用程序时,决定使用DataSet还是DataReader需要考虑应用程序需要的功能。使用DataSet是为了实现应用程序的下述功能: l 操作结果中的多个分离的表。l 操作来自多个源(例如来自多个数据库、XML文件和电子表格的混合数据)的数据。l 在层之间交换数据或使用XML Web服务。与DataReader 不同,DataSet能被传递到远程客户端。l 通过缓冲重复使用相同的行集合以提高性能(例如排序、搜索或过滤数据)。l 每行执行大量的处理。在使用DataReader返回的行上进行扩展处理将使连接存在的时间比必要的更长,从而降低效率。l 使用XML操作(例如XSLT转换和Xpath查询)维护数据。在应用程序需要以下功能时使用DataReader: l 不需要缓冲数据。l 正在处理的结果集太大而不能全部放入内存中。l 需要迅速一次性访问数据,采用只向前的只读的方式。注意:当填充DataSet的时候,DataAdapter使用DataReader。因此使用DataAdapter代替DataSet获得的性能是节约了DataSet消耗的内存和组装DataSet所需要的周期。这种性能的提高大部分是有名无实的,因此你应该根据需要的功能为基础来做设计决定。使用强类型DataSet的好处 使用DataSet的另一个好处是它能被继承用于建立强类型的DataSet。强类型DataSet的好处包括设计时的检查和强类型DataSet 的Visual Studio .NET语句填充。当你为DataSet固定了大纲或关系结构时,就能建立强类型DataSet,把行和列作为对象的属性而不是项的集合。例如,作为暴露顾客表的某一行的列名的代替,你可以暴露Customer对象的 Name属性。强类型的DataSet衍生自DataSet类,因此不会牺牲DataSet的任何功能,也就是说,强类型的DataSet也可以是远程的,并作为数据绑定控件(例如DataGrid)的数据源提供。如果不知道大纲,也能通过使用通常的DataSet获得好处,但是丧失了强类型DataSet的附加特性。
使用DataReader、DataSet、DataAdapter和DataView
来源:互联网 发布日期:2015-10-02 16:21:15 浏览:1036次
相关内容
AiLab云推荐
最新资讯
本月热点
热门排行
-
周鸿祎预测2024大模型10大趋势,“建议让AI在公司里无孔不入”
阅读量:186874
-
AI大变局,时代新希望|异想大会
阅读量:167156
-
产品经理必须懂得AI:ChatGPT-人工智能对话的新篇章
阅读量:107635
-
印媒:防AI造假,尼康、索尼等相机巨头拟推“数字签名”新技术
阅读量:104914
-
AI 的未来比你想象的更不稳定
阅读量:94547
-
比OpenAI官方提示词指南更全,这26条黄金准则让LLM性能飙升50%以上
阅读量:60890