C# 以列表形式获取GroubBy()的结果<;列表<;SomeObject>&燃气轮机; class-SomeObject { int值{get;set;} 字符串ID{get;set;} } var TheList=列表{…} var groupedObjects=TheList.GroupBy(o=>o.ID);
返回类型为C# 以列表形式获取GroubBy()的结果<;列表<;SomeObject>&燃气轮机; class-SomeObject { int值{get;set;} 字符串ID{get;set;} } var TheList=列表{…} var groupedObjects=TheList.GroupBy(o=>o.ID);,c#,linq,C#,Linq,返回类型为IEnumerable 在调试“结果视图”中,项目被正确分组 如何获取列表作为返回 一个简单的ToList()显然不起作用。您需要两个ToList()s: 您需要两个ToList()s: 这里有一个类似的问题,答案很好: 你可以试试 TheList.GroupBy(o => o.ID, c => c) .Select(g=>g.ToList()) .ToList(); 这里有一个类似的问题,答案很好: 你可以试试 TheList.Grou
IEnumerable
在调试“结果视图”中,项目被正确分组
如何获取列表作为返回
一个简单的ToList()
显然不起作用。您需要两个ToList()
s:
您需要两个ToList()
s:
这里有一个类似的问题,答案很好:
你可以试试
TheList.GroupBy(o => o.ID, c => c)
.Select(g=>g.ToList())
.ToList();
这里有一个类似的问题,答案很好:
你可以试试
TheList.GroupBy(o => o.ID, c => c)
.Select(g=>g.ToList())
.ToList();
1) 没有无参数版本的SelectMany
(因此这不会编译),2)我不确定这是他们想要的:SelectMany(x=>x)
将分组平铺成一个级别,而OP仍然需要两个级别,他们只是想把它们都列出来1)没有无参数版本的SelectMany
(所以这不会编译),2)我不确定这就是他们想要的:SelectMany(x=>x)
会将分组平铺成一个级别,而OP仍然需要两个级别,他们只是想把它们都列出来。T:我想你可以把c=>c
去掉吗?虽然它在OP的question@canton7是的,它可以被删除,但它不会改变任何东西,并保持原始尝试不变(相关的更改是添加了ToList()
s),这要感谢你们两位。c确实是不必要的,但是@DStanley如何提到它并没有改变结果。尼特:我想你可以去掉c=>c
?虽然它在OP的question@canton7是的,它可以被删除,但它不会改变任何东西,并保持原始尝试不变(相关的更改是添加了ToList()
s),这要感谢你们两位。c确实是不必要的,但是@DStanley如何提到它并没有改变结果。
var groupedObjects = TheList.GroupBy(o => o.ID, c => c).SelectMany();