DataTable GroupBy的用法

            var result = dt.AsEnumerable().
GroupBy(g => new
{
StaffID = g.Field<string>("StaffID"),
StaffName = g.Field<string>("StaffName"),
ActivityDate = g.Field<string>("ActivityDate")
}).
Select(n => new DailyRouteDisplayItem
{
ActivityDate = n.Key.ActivityDate,
StaffID = n.Key.StaffID,
StaffName = n.Key.StaffName,
RouteList = n.Select(x => new RouteDisplayItem
{
StaffID = x["StaffID"].ToString(),
StaffName = x["StaffName"].ToString(),
ActivityID = x["ActivityID"].ToString(),
ActivityDate = x["ActivityDate"].ToString(),
CheckinType = x["CheckinType"].ToString(),
CheckinTime = x["CheckinTime"].ToString(),
CheckinLat = ConvertObject.ToDecimal(x["CheckinLat"]),
CheckinLng = ConvertObject.ToDecimal(x["CheckinLng"]),
CheckoutType = x["CheckoutType"].ToString(),
CheckoutTime = x["CheckoutTime"].ToString(),
CheckoutLat = ConvertObject.ToDecimal(x["CheckoutLat"]),
CheckoutLng = ConvertObject.ToDecimal(x["CheckoutLng"])
}).ToList()
}).ToList();

  

数组GroupBy的用法

            var result = list.GroupBy(n => new { n.ActivityDate, n.StaffID, n.StaffName }).Select(n => new DailyRouteDisplayItem
{
ActivityDate = n.Key.ActivityDate,
StaffID = n.Key.StaffID,
StaffName = n.Key.StaffName,
RouteList = n.ToList()
}).ToList();

  

【笔记】DataTable或IList使用GroupBy方法的lamda表达式的更多相关文章

  1. C#DataTable 使用GroupBy方法的lamda 表达式和Linq语句写法

    https://www.cnblogs.com/johnblogs/p/6006867.html DataTable ds = new DataTable(); //1.lamda 表达式写法(推荐) ...

  2. MVC用户登录方法(lamda表达式)

        public bool ValidateUser(account model) { using (assertEntities db = new assertEntities()) { acc ...

  3. 反射List<M> To DataTable|反射IList To DataTable|反射 DataTable To List<M>

    将DataTable集合反射获取 List<M> /// <summary> /// 根据DataTable集合反射获取 List<M> /// </summ ...

  4. 【2017001】IList转DataTable、DataTable转IList

    IList转DataTable.DataTable转IList using System; using System.Collections.Generic; using System.Compone ...

  5. 委托学习笔记后续:泛型委托及委托中所涉及到匿名方法、Lambda表达式

    引言: 最初学习c#时,感觉委托.事件这块很难,其中在学习的过程中还写了一篇学习笔记:委托.事件学习笔记.今天重新温故委托.事件,并且把最近学习到和委托相关的匿名方法.Lambda表达式及泛型委托记录 ...

  6. 完整DataTable与IList互换(转)

    public class CollectionHelper { private CollectionHelper() { } public static DataTable ConvertTo< ...

  7. 转载Linq中GroupBy方法的使用总结

    Group在SQL经常使用,通常是对一个字段或者多个字段分组,求其总和,均值等. Linq中的Groupby方法也有这种功能.具体实现看代码: 假设有如下的一个数据集: public class St ...

  8. C# 链表去重 List 一维 二维 分别使用 Distinct() GroupBy() 方法

    分别使用List中Distinct(),GroupBy()实现链表的去重. 1.先上效果: 一维链表中分别有元素“aa”,"bb",'aa','aa',"cc" ...

  9. 《笔记》Python itertools的groupby分组数据处理

    今天遇到这么一个需求,需要将这样的数据进行分组处理: [(, ), (, ), (, ), (, ), (, ), (, )] 处理之后我可能需要得到这样的结果: [(, (, , (, , (, ) ...

随机推荐

  1. Struts2之web元素访问与模板包含与默认Action使用

    上一篇为大家介绍了如何使用Action进行参数接收,以及简单的表单验证,本篇为大家介绍一下关于Action访问web元素的三种方式(request.session.application):模板包含( ...

  2. vue使用sass

    一.安装sass依赖包 $ npm install sass-loader --save-dev //sass-loader依赖于node-sass $ npm install node-sass - ...

  3. EF---延迟加载技术

    延迟加载: 优点:只在需要的时候加载数据,不需要预先计划,避免了各种复杂的外连接.索引.视图操作带来的低效率问题 使用方式:两步 第一:在需要延迟加载的属性前加上virtual ,该属性的类型可以是任 ...

  4. docker参数--restart=always的作用

    创建容器时没有添加参数  --restart=always ,导致的后果是:当 Docker 重启时,容器未能自动启动. 现在要添加该参数怎么办呢,方法有二: 1.Docker 命令修改 docker ...

  5. 前端代码在线调试&分享网站

    1.RunJs 2.CodePen 3.JsFiddle

  6. Linux批量杀死进程

    杀死进程在linux中使用kill命令了,我们可以下面来给各位介绍一篇关于Linux下批量杀死进程的例子,希望此例子可以对各位同学带来帮助的哦. 批量杀死包含关键字“php-fpm”的进程. kill ...

  7. Fiddler实现手机的抓包(转载园友小坦克)

    Fiddler不但能截获各种浏览器发出的HTTP请求, 也可以截获各种智能手机发出的HTTP/HTTPS请求. Fiddler能捕获IOS设备发出的请求,比如IPhone, IPad, MacBook ...

  8. ElasticSearch 安装 elasticsearch-analysis-ik分词器

    IK version ES version master 5.x -> master 5.6.1 5.6.1 5.5.3 5.5.3 5.4.3 5.4.3 5.3.3 5.3.3 5.2.2 ...

  9. webconfig的配置说明

    转自 :http://www.cnblogs.com/kissdodog/archive/2013/04/16/3025315.html <?xml version="1.0" ...

  10. PowerDesigner 把Comment/name 互转

    转载:https://www.cnblogs.com/cxd4321/archive/2009/03/07/1405475.html 在使用PowerDesigner对数据库进行概念模型和物理模型设计 ...