在LINQ中展开列表
我有一个LINQ查询返回IEnumerable<List<int>>
但我只想返回List<int>
所以我想合并我的IEnumerable<List<int>>
所有logging到只有一个数组。
例如:
IEnumerable<List<int>> iList = from number in (from no in Method() select no) select number;
我想把所有我的结果IEnumerable<List<int>>
只有一个List<int>
因此,从源数组:[1,2,3,4]和[5,6,7]
我只想要一个数组[1,2,3,4,5,6,7]
谢谢
尝试SelectMany()
var result = iList.SelectMany( i => i );
使用查询语法:
var values = from inner in outer from value in inner select value;
iList.SelectMany(x => x).ToArray()
喜欢这个?
var iList = Method().SelectMany(n => n);
如果你有一个List<List<int>> k
你可以做
List<int> flatList= k.SelectMany( v => v).ToList();