【代码】在C#中对DataTable实现Group By查询的lamda表达式和linq语句写法

2021-12-10 16:47:37  阅读 3134 次 评论 0 条

项目有个需求,就是目录要按字母排序,也就是A下面一堆,B下面一堆。为了性能,肯定不能一遍遍的去数据库查,对吧。什么?你愿意,数据库他不愿意啊,多浪费性能,是吧。所以这个文章就介绍在代码直接对DataTable进行GroupBy处理

直接上代码:

//下面lamda表达式和linq语句任选其一,别直接全复制


//lamda表达式(推荐)
var t_res = ds.Tables[0].AsEnumerable().GroupBy(s => new { zimu = s.Field<string>("zimu") });
//linq
var t_res= from s in ds.Tables[0].AsEnumerable()
       group s by new { zimu = s.Field<string>("zimu") } into tmp
      select tmp;
      
foreach (var gitem in t_res)
{
    string zimu = gitem.Key.zimu;
    foreach (var row in gitem)
    {
        //这个就是里面所有的row
        //直接写你的操作就好,就是正常的datarow
        
    }

}



微信扫码查看本文
本文地址:https://www.yangguangdream.com/?id=2185
版权声明:本文为原创文章,版权归 编辑君 所有,欢迎分享本文,转载请保留出处!

发表评论


表情

还没有留言,还不快点抢沙发?