gpt4 book ai didi

c# - 如何按 IEnumerable 属性值分组

转载 作者:行者123 更新时间:2023-11-30 14:09:15 26 4
gpt4 key购买 nike

假设我有

class Class1 A {
int Id;
IEnumerable<Class2> B;
}

class Class2 B {
string Title;
}

所以如果我有(json 格式)

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

我想按 Title 分组,所以结果是

 { {"Id": 0, "Title": "a"}, {"Id": 0, "Title": "b"}, {"Id": 0, "Title": "c"} };

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

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

(我预计这不会起作用)和

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

但那时我只有头衔。我该怎么做?

最佳答案

您不是分组,您是在做相反的事情 - 扁平化 - 这是通过 SelectMany 完成的:

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

关于c# - 如何按 IEnumerable 属性值分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30352810/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com