假设:
var detailList = new List<DetailItem>();
其中:
class DetailItem
{
string A;
MyType B;
}
字段A上的LINQ查询组可以进入以下数据结构:
class GroupItem
{
string A;
List<MyType> AllBsWithinA;
}
IEnumerable<GroupItem> linqQuery = detailList.SomeLinqMagic(…);
有问题的数据都是基于内存的,因此这是一个LINQ to Objects问题。
答案 0 :(得分:9)
这看起来很简单,除非我错过了你的意思:
IEnumerable<GroupItem> linqQuery = detailList
.GroupBy(i => i.A)
.Select(g => new GroupItem()
{
A = g.Key,
AllBsWithinA = g.Select(i => i.B).ToList()
});