我想要将一个包含多个集合的 IEnumerable<IEnumerable<T>>
合并成一个单一的 IEnumerable<T>
。使用 Union
操作符只适用于两个集合。有什么想法吗?
我想要将一个包含多个集合的 IEnumerable<IEnumerable<T>>
合并成一个单一的 IEnumerable<T>
。使用 Union
操作符只适用于两个集合。有什么想法吗?
var it = GetTheNestedCase();
return it.SelectMany(x => x);
SelectMany是LINQ转换操作,其基本意思是“对于集合中的每个项目返回集合的元素”。它将一个元素变成多个(因此称为SelectMany)。它非常适合将集合的集合拆分成平面列表。
var lists = GetTheNestedCase();
return
from list in lists
from element in list
select element;
使用C# 3.0查询表达式语法还有另一种方法来执行此操作。