将DataSet转换成强类型集合
最近用到杨涛老师("陕西吴旗娃")写的一个asp.net mvc 分页控件 里面的类是用的List<T>实现的
我一般是在多表联合查询场景下使用这个
我想到了2种思路:
<1> 将动态Sql查询出来的结果 形成一个实体对象集合(好处是:强类型 坏处是:比较麻烦 )
其实也不是很麻烦 用代码生成器将一个视图 形成一个实体类 也就是一会儿的事情
有的时候 sql语法可能很麻烦 视图可能解决不了?
那就生成了临时表 也可以生成实体类
<2> 将查询出来的DataSet 作为结果集合使用 这就需要将DataSet转换成可以枚举的集合
DataTable myProducts = ds.Tables["Products"];
DataView view = myProducts.AsDataView();
//Query
IEnumerable
foreach (DataRow myDataRow in viewQuery)
{
Console.WriteLine(myDataRow.Field
} .
IEnumerable
补充:2011年3月18日9:24:37
刚才经过试验 还是不知道怎么讲Dataset传进去 还是使用将动态查询结果赋值给一个实体类吧(一个视图或者临时表形成的)