Linq to Entities组查询给出每个组中的结果列表

时间:2014-06-04 14:12:08

标签: c# linq entity-framework linq-to-entities

如果我有一组具有3个属性(Id,Type,Size)的实体,所有这些都是字符串。

有没有办法使用Linq to Entities我可以进行群组查询,这会给我Size + Type作为关键字,然后列出相关的ID&'s Size + Type

以下获取计数的示例:

Items.GroupBy(x => new { x.Size, x.Type})
     .Select(x => new { Key = x.Key, Count = x.Count() }) 

但是我希望获得每个分组的ID列表?

我想看看在我决定在代码中迭代这个并建立结果之前是否可以使用Linq-to-EF。

1 个答案:

答案 0 :(得分:4)

如果您想获得每个组的ID列表,那么您必须选择x.Select(r => r.Id)之类的:

var result = Items.GroupBy(x => new { x.Size, x.Type })
                  .Select(x => new
                    {
                        Key = x.Key,
                        Ids = x.Select(r => r.Id)
                    });