ienumerable >를 ienumerable 로 어떻게 줄일 수 있습니까?
-
05-07-2019 - |
문제
이상한 캡션에 대해 죄송합니다. 내가 달성하려는 것은 간단합니다.
IEnumerable<IEnumerable<Foo>> listoflist;
IEnumerable<Foo> combined = listoflist.CombineStuff();
예시:
{{0, 1}, {2, 3}} => {0, 1, 2, 3}
나는 이것에 대한 LINQ 표현이있다 ...
사이드 노트 : 목록이 클 수 있습니다.
해결책
Leppie가 말했듯이, 당신은 원합니다 Enumerable.SelectMany
. 가장 간단한 형태는 다음과 같습니다.
combined = listOfList.SelectMany(x => x);
쿼리 표현식에서 SelectMany
둘 이상이있을 때 호출됩니다 from
조항, 따라서 대안은 다음과 같습니다.
combined = from x in listOfList
from y in x
select y;
다른 팁
SelectMany ()
확인
제휴하지 않습니다 StackOverflow