Linq集团由伯爵和伯爵组成

时间:2017-02-24 07:49:15

标签: c# linq

我有以下表格数据:

table data

上表数据插入的工作原理如下: - 我们现在有两个状态(1,2)。 创建条目时,其状态为1,并将其分配给ID为1的用户。 更新数据时,状态为2,可以分配给多个用户,此处将其分配给用户2和3.

我希望按以下方式按状态对数据进行分组: -

Result

每个ID只应包含在一个状态下,并且应根据每个状态更新的最新日期进行。 这怎么可能在linq c#?

修改 以下是我所能达到的目标。

var result = (from el in this.logRepository.GetQuery(null)
                    group el by el.statusinto grp
                    select new
                    { ID = grp.Key, Count = grp.Count()}).ToList();

1 个答案:

答案 0 :(得分:0)

您可以使用GroupBy方法获取所需的功能。

GroupBy(foo => foo.Bar)会生成一个Dictionary,其中键是来自foo.Bar的值,而词典中每个条目的值是foo.Bar值上匹配的任何内容的集合。 / p>