2009-02-26 3 views
1

LINQ에서 상위 자식 관계를 사용할 때 ALL 연산자를 가장 잘 활용하는 예제를보고 싶습니다. 나 한테 보여줘 줄래?All 연산자 사용

+0

질문 (고객 주문시) - 아니요; 즉, cust.Orders.Any()가 cust를 선택하면 ctx.Customers의 cust에서 가져온 Any (모든 것)가됩니다. –

답변

1

All() 확장 메소드는 모든 항목에 대해 조건부를 검사합니다. 예를 들어, 실행시 :

if(order.Lines.All(l=>l.IsClosed)) order.Close(); 

쿼리에서의

(검사 모든 라인 폐쇄되고, 따라서 순서를 폐쇄하는 경우)

var qry = from order in ctx.Orders 
     where order.CustomerId = id 
     select new { 
      order.OrderId, 
      IsShipped = order.Lines.All(l => l.IsShipped) 
     }; 
+0

내가 주문한 모든 고객을 선택하는 사례를 어떻게 다룰 수 있습니까? 이것이 '모두'에 대한 좋은 후보입니까? – Viks

+0

아니요; 즉, cust.Orders.Any()가 cust를 선택하면 ctx.Customers의 cust에서 가져온 Any (모든 것)가됩니다. –

0

모든 자녀가 활동 중인지 여부와 함께 부모님을 만나고 싶다면.

from p in MyContext.Parents 
select new 
{ 
    p, 
    ChildrensActive = p.Childrens.All(c=> c.IsActive) 
} 
0
IEnumerable<CD> goodCDs = CDs 
    .Where(cd => cd.Songs.All(song => song.Rating > 6))