我有一个A.的集合.A包含几个属性,包括B的集合.B包含一个ID。仅使用A的集合,我如何按B.ID ??
进行分组更详细一点:
public class Config
{
public int Id { get; set; }
public List<Feature> Features { get; set; }
}
public class Feature
{
public string Title { get; set; }
public int Id { get; set; }
}
如果我有一个Config集合,我需要按Feature.Id分组,这样我的结果看起来像这样:
- Feature 1
- Config1
-Id
-Features
- Config2
-Id
-Features
- Config3
-Id
-Features
- Feature 2
- Config1
-Id
-Features
- Config2
-Id
-Features
- Config3
-Id
-Features
- Feature 3
- Config1
-Id
-Features
- Config2
-Id
-Features
- Config3
-Id
-Features
如何使用LINQ实现这一目标?
答案 0 :(得分:2)
listConfigs.SelectMany(c=>c.Features).GroupBy(f=>f.Id)