关于datatable转化为对象数组或泛型集合的性能问题

问题描述

1、如果用datatable返回数据,绑定到页面用eval("字段"),相当的麻烦,得写每一字段;(不会自动感应)2、如果用sqldatareader取出数据装入一个对象数组,页面就就可以用对象[索引].属性来访问数据,貌似很灵活,但问题是就不能使用datatable封装的方法来进行计算,得手工写N多SQL;3、如果用datatable回传数据,然后把datatable转化为对象数组或泛型集合,然后页面中就可以使用 对象[索引].属性来访问数据,并且也可以正常使用datatable封装的方法。(多表查询不易控制)问题:方法3中用到了反射,请问性能会有多大的损失?

解决方案

解决方案二:
下个测试软件试试就行了

时间: 2024-09-20 22:50:40

关于datatable转化为对象数组或泛型集合的性能问题的相关文章

DataTable填充实体类返回泛型集合

     昨天找坤哥看到我的一段代码,如下:           稍微解释下,这段代码时D层查询结束后,将datatable查询到的结果赋值给实体对象的属性,然后返回实体的过程,坤哥看了之后问我,如果实体有500多个属性,难道也要这样一条一条的写吗?如果返回多个实体时怎么办?这时,我才意识到自己的代码时非常有问题的,原来设计的是每个方法最多返回一个实体,但是当遇到查询到多条记录的时候,就又冒着破坏三层结构的事返回Datatable去了,真的是很有问题啊.      怎么改,我脑海中一下子就浮现了

struts 2中对象数组的传值

大家用struts2时想必会经常遇到在JS或者JSP中往后台传递对象数组的问题,你是不是在一直为后台取值是null的问题而苦恼呢?下边我来告诉大家究竟如何做才能取到值. 一.在Action中声明数组对象(这里也可以是List等集合),代码如下: public List<User> users = new ArrayList<User>(); 这里有两点需要注意: 1.声明可以是public也可以是private,private 要求必须生成get.set方法,推荐使用第二种方式,原

编写高质量代码改善C#程序的建议:泛型集合、选择集合和集合的安全

前言 软件开发过程中,不可避免会用到集合,C#中的集合表现为数组和若干集合类.不管是数组还是集合类,它们都有各自的优缺点.如何使用好集合是我们在开发过程中必须掌握的技巧.不要小看这些技巧,一旦在开发中使用了错误的集合或针对集合的方法,应用程序将会背离你的预想而运行. 本文已更新至http://www.cnblogs.com/aehyok/p/3624579.html .本文主要学习记录以下内容: 建议20.使用泛型集合来替代非泛型集合 建议21.选择正确的集合 建议22.确保集合的线性安全 建议

编写高质量代码改善C#程序的157个建议[泛型集合、选择集合、集合的安全]

原文:编写高质量代码改善C#程序的157个建议[泛型集合.选择集合.集合的安全] 前言   软件开发过程中,不可避免会用到集合,C#中的集合表现为数组和若干集合类.不管是数组还是集合类,它们都有各自的优缺点.如何使用好集合是我们在开发过程中必须掌握的技巧.不要小看这些技巧,一旦在开发中使用了错误的集合或针对集合的方法,应用程序将会背离你的预想而运行. 本文已更新至http://www.cnblogs.com/aehyok/p/3624579.html .本文主要学习记录以下内容: 建议20.使用

通过反射填充泛型集合List的静态方法

集合|静态 呃```花了一晚上时间,终于搞出来了如何通过反射,从DataReader将数据填充到数据实体泛型集合的静态方法. //Kchen.Core.BaseBusinessObject为通用数据实体类,此处仅为限定T所继承的类型        public static IList<T> FillDataListGeneric<T>(System.Data.IDataReader reader) where T : Kchen.Core.BaseBusinessObject  

js中如何把字符串转化为对象、数组示例代码

在本文为大家介绍下把字符串转化为对象:把文本转化为对象.把文本转化为数组,具体实现如下,感兴趣的朋友可以参考下哈,希望对大家有所帮助   例如 复制代码 代码如下: var test='{ colkey: "col", colsinfo: "NameList" }' 很明显是一个对象,但如何把文本转为对象呢.使用eval();注意一定要加括号,否则会转换失败 把文本转化为对象 复制代码 代码如下: var test='{ colkey: "col"

js中如何把字符串转化为对象、数组示例代码_javascript技巧

例如 复制代码 代码如下: var test='{ colkey: "col", colsinfo: "NameList" }' 很明显是一个对象,但如何把文本转为对象呢.使用eval();注意一定要加括号,否则会转换失败 把文本转化为对象 复制代码 代码如下: var test='{ colkey: "col", colsinfo: "NameList" }' var obj2=eval("("+test

关于DataTable与IList和List泛型集合的相互转换在网上总结

我在做amchart的还有微软相关的chart控件时发现绑定使用Datatabale不能绑定 但是支持DataSet 和泛型集合:于是谢谢网上好友的帮助:自己做了下总结 自己弄了一些集合转化的文章: 对于技术方面的理论我不需多言: 主要是是通过映射命名空间:使用Linq的相关查询:和Type类获取列名:使用泛型转化为实体类后放到集合: 代码如下: 1 publicstaticclass ConvertTolistInfo 2 { 3 ///<summary> 4 /// DataTable 转

在java中,有没有什么办法可以用循环的方法可以初始化很多对象到一个对象数组或者是集合当中去

问题描述 在java中,有没有什么办法可以用循环的方法可以初始化很多对象到一个对象数组或者是集合当中去 如上所述,我想要把一系列的对象初始化到一个数组或者是集合当中去,这个该怎么实现? 解决方案 List list=new ArrayList(); for(int i=0;i<10;1++){ A a=new A(); list.add(a); } 解决方案二: 不知道你想表达什么,,用一个for循环初始化后放到数组中去不就行了 解决方案三: 按照你的需求,如果你的初始化数据有规律的话,可以用循