calculate the total time grouping by date and id using linq

Ren*_*nto 3 .net c# linq linq-to-objects .net-4.0

My data looks like this

ID  |   START_DATE          |   END_DATE                |   Chapter
1       01/03/2013 05:15:14     01/03/2013 06:20:14         1
1       01/03/2013 06:25:33     01/03/2013 06:40:11         2
2       01/03/2013 05:01:34     01/03/2013 05:30:13         1
2       01/03/2013 05:31:20     01/03/2013 06:30:13         2
2       01/03/2013 06:32:20     01/03/2013 07:20:01         3
1       02/03/2013 05:15:14     01/03/2013 06:20:14         1
1       02/03/2013 06:25:33     01/03/2013 06:40:11         2
Run Code Online (Sandbox Code Playgroud)

I want a result like this

ID  | Date          |       Total Duration
1       01/03/2013          Time in Minutes
1       02/03/2013          Time in Minutes
2       02/03/2013          Time in Minutes
Run Code Online (Sandbox Code Playgroud)

There is a way to do this with linq using C#?

Ser*_*kiy 5

按日期和ID对项目进行分组,并计算每个组的持续时间总和:

var query = from r in records
            group r by new { r.Id, r.StartDate.Date } into g
            select new {
               g.Key.Id,
               g.Key.Date,
               TotalDuration = g.Sum(x => (x.EndDate - x.StartDate).TotalMinutes)
            };
Run Code Online (Sandbox Code Playgroud)

这是工作计划.