"ds_test类"
这个是编译前的代码段,编译之后就是"静态"的了.
去了解一下.net的MetaData就知道."接口给过来的DataSet中有多少表,不确定,每个表有多少列,不确定。但是要能通吃这个DataSet"
DataSet是运行时产生的数据,如果内容格式都不定,肯定不存在一个静态的已经写入到MetaData的类来匹配这个动态数据.如果楼主真的想要这个效果,就需要动态生成ds_test类,在DataSet尝试数据时,动态编译,反射调用.这种方法,编码难度、调试与除错都比静态编译的代码难度高。我不知道为什么楼主会有这种需求。是否是理解需求--> 设计出现了问题?
这个是编译前的代码段,编译之后就是"静态"的了.
去了解一下.net的MetaData就知道."接口给过来的DataSet中有多少表,不确定,每个表有多少列,不确定。但是要能通吃这个DataSet"
DataSet是运行时产生的数据,如果内容格式都不定,肯定不存在一个静态的已经写入到MetaData的类来匹配这个动态数据.如果楼主真的想要这个效果,就需要动态生成ds_test类,在DataSet尝试数据时,动态编译,反射调用.这种方法,编码难度、调试与除错都比静态编译的代码难度高。我不知道为什么楼主会有这种需求。是否是理解需求--> 设计出现了问题?
其实目的就是把DataSet中的DataTable转换成一个个List,
因为DataTable占用的内存比List会小很多
然后最终的结果最好能放在一个类里面,如果不能也行
接口给过来的DataSet中有多少表,不确定,每个表有多少列 这接口是有多神奇啊!!!
LTE的性能接口
因为DataTable占用的内存比List会小很多
-----------------------------------------------------说反了,list占内存小。动态生成datatable对应的实体类型有难度要说为了不占内存,倒不如用List<object[]>:
foreach(DataRow row in ds.Table[0].Rows){
list.Add(row.ItemArray);
}
这个是我正在处理的方法。
用字典将生成的一个个List与表名存起来。
转成List以后,就可以通过动态编译,根据指标公式,组成与List匹配的Linq语句,就能计算结果了