关于DataTable和DataReader转换数据的效率问题
今天做了一个测试,用DataTable获取数据然后转Json和实体类,以及用DataReader获取数据然后转Json和实体类,出现了下面的一个情况:
(1)从数据库获取的数据转换成实体类时,用DataTable比用DataReader转实体快
(2)从数据库获取的数据转换成JSON字符串时,用DataReader比用DataTable转JSON字符串快
从DataReader和DataTable的性质看,
DataReader是一条一条读取,再转JSON的时候直接转换,
而DataTable是读取所有数据然后缓存在内存,在转JSON格式的时候在遍历一遍去转,
所以才会出现上面的(2)这种情况,但是为什么又会出现(1)这种情况呢,求大神帮忙指点下
测试环境:
(1)相同的电脑
(2)测试数据是10万条到100万条数据
(3)测试了上百组数据基本都是上面的结果,不存在偶然性
下面附上转实体的时候的代码:
图1是DataReader转实体类的代码:

图2是DataTable转实体类的代码:

(1)从数据库获取的数据转换成实体类时,用DataTable比用DataReader转实体快
(2)从数据库获取的数据转换成JSON字符串时,用DataReader比用DataTable转JSON字符串快
从DataReader和DataTable的性质看,
DataReader是一条一条读取,再转JSON的时候直接转换,
而DataTable是读取所有数据然后缓存在内存,在转JSON格式的时候在遍历一遍去转,
所以才会出现上面的(2)这种情况,但是为什么又会出现(1)这种情况呢,求大神帮忙指点下

测试环境:
(1)相同的电脑
(2)测试数据是10万条到100万条数据
(3)测试了上百组数据基本都是上面的结果,不存在偶然性
下面附上转实体的时候的代码:
图1是DataReader转实体类的代码:

图2是DataTable转实体类的代码:

...全文
相关推荐
Json格式转换类.zip
C#json转换类,list转json,对象转Json,对象集合转Json,DataSet转换为Json,Datatable转换为Json,DataReader转换为Json
ADO.NET实用经验汇总
主要介绍了ADO.NET实用经验汇总,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
ADO.NET 应用程序中实现和获得最佳性能
无意中看到一篇好文章,现在转给大家,如果原作者不喜欢,请通知我一声。下面是正文。 本文为您提供了在 Microsoft ADO.NET 应用程序中实现和获得最佳性能、可伸缩性以及功能的最佳解决方案;同时也讲述了使用 ADO.NET 中可用对象的最佳实践;并提出一些有助于优化 ADO.NET 应用程序设计的建议。
ado.net技术内幕光盘资料
ado.net技术内幕光盘资料,资料齐全,适用
ado.net中文手册
有很多下载了不能看,这个重新编译了,是可以的


