2008-09-05 2 views

답변

9
from a in TableA 
where (from b in TableB 
     join c in TableC on b.id equals c.id 
     where .. select b.id) 
.Contains(a.Id) 
select new { a.Id, a.Name } 
1

LINQ의 IN에 대한 초기 아웃풋 지원은 없습니다. 2 개의 쿼리를 결합해야합니다.

4

LINQ는 포함 형태로 IN을 지원합니다. "id IN (collection)"대신 "collection.Contains (id)"라고 생각하십시오.

from a in TableA 
where (
    from b in TableB 
    join c in TableC 
     on b.id equals c.id 
    select b.id 
).Contains(TableA.Id) 
select new { a.Id, a.Name } 

이 블로그도 참조하십시오 post.