J'ai une requête LINQ qui renvoie IEnumerable<List<int>>
mais je souhaite renvoyer uniquement List<int>
, donc je souhaite fusionner tous mes enregistrements de mon IEnumerable<List<int>>
vers un seul tableau.
Exemple :
IEnumerable<List<int>> iList = from number in
(from no in Method() select no) select number;
Je veux prendre tout mon résultat IEnumerable<List<int>>
à un seul List<int>
Par conséquent, à partir des tableaux sources: [1,2,3,4] et [5,6,7]
Je veux un seul tableau [1,2,3,4,5,6,7]
Merci
Essayez SelectMany()
var result = iList.SelectMany( i => i );
Avec la syntaxe de requête:
var values =
from inner in outer
from value in inner
select value;
iList.SelectMany(x => x).ToArray()
Comme ça?
var iList = Method().SelectMany(n => n);
Si vous avez un List<List<int>> k
vous pouvez le faire
List<int> flatList= k.SelectMany( v => v).ToList();