c# – 如何按IEnumerable属性值进行分组

c# – 如何按IEnumerable属性值进行分组,第1张

概述可以说我有 class Class1 A { int Id; IEnumerable<Class2> B;}class Class2 B { string Title;} 所以,如果我有(以json格式) {Id: 0, B: [{"Title": "a"}, {"Title": "b"}, {"Title": "c"} ]} 我想按标题分组,结果如此 { {"Id 可以说我有

class Class1 A {    int ID;    IEnumerable<Class2> B;}class Class2 B {    string Title;}

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

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

我想按标题分组,结果如此

{ {"ID": 0,"Title": "a"},{"ID": 0,"Title": "b"},"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属性值进行分组全部内容,希望文章能够帮你解决c# – 如何按IEnumerable属性值进行分组所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1219607.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存