如何按IEnumerable属性值进行分组

时间:2015-05-20 14:35:27

标签: c# linq

让我说我有

{Id: 0, B: [{"Title": "a"}, {"Title": "b"}, {"Title": "c"} ]}

所以,如果我有(以json格式)

Title

我想按 { {"Id": 0, "Title": "a"}, {"Id": 0, "Title": "b"}, {"Id": 0, "Title": "c"} }; 进行分组,结果将是

var result = A.GroupBy(x => x.B)

首选LINQ解决方案。试图做:

var result = A.SelectMany(x => x.B).GroupBy(x => x)

(我希望这不会起作用)和

define("DB_HOST", "localhost");

然后我只有头衔。我怎么能这样做?

1 个答案:

答案 0 :(得分:7)

你不是分组,你正在做相反的事情 - 展平 - 这是用SelectMany完成的:

A.SelectMany(a => a.B, (a, b) => new {a.Id, b.Title});