c# 예제 - Linq : 목록의 긴 목록




1 Answers

ybo의 답변도 내 첫 번째 응답이었을 것입니다. 이 쿼리 표현식은 다음과 같습니다.

var query = from a in computeAList()
            from b in a.Alist
            select b.C;

완전성을 위해이 스레드의 다른 대답은 동일한 주제의 변형입니다.

ybo에서 (점 표기법으로 표현 된 정확히 동일한 쿼리) :

var query = listOfA.SelectMany(a => a.Alist, (a, b) => b.C);

Ray Hayes (Where 절 포함)에서 약간 재 형식화했습니다.

var query = listOfA.SelectMany(a => a.AList, (a, b) => b.C)
                   .Where(c => c.Length > 0);
list removeall

나는 타입 B 의 객체리스트로 구성된 타입 A 의 객체를 가지고있다 :

class A { list<B> Alist;}
class B { string C; string D;}

내 프로그램에는 A 객체 목록이 있습니다.

list<A> listOfA = computeAList();

그 목록에있는 모든 C 문자열을 선택하고 싶습니다. 다음 진술은 내가 원하는 결과를 줄 것이라고 기대했다. C 포함하는리스트를 리턴한다.

var query = from objectA in listOfA
            select objectA.Alist.FindAll(x => x.C.Length > 0).C;

대신에 모든 C 의 단일 목록을 얻는 방법이 있습니까?




Related

c# linq

Tags

c#   linq