2011-01-21 2 views
1

) queryableOrderByDescending(...) (및 Take(1)) 사이에 괄호를 두거나 제거하면 어떤 차이가 있습니까? 그 이유는 무엇?LOOQ 확장 메서드 쿼리에서 괄호 효과 (

public static IQueryable<IEffectiveDated> GetCurrent(this IQueryable<IEffectiveDated> queryable, DateTime asOfDate) 
{   
    return (queryable 
     .Where(e => e.EffectiveDate <= asOfDate) 
     .OrderByDescending(e => e.EffectiveDate)) 
     .Take(1);  
} 

답변

3

이 경우에는 차이가 없습니다. 즉 : 후자는 Linq에 체인 아마 더 깨끗하고 더 좋은 프로그램입니다

return queryable 
    .Where(e => e.EffectiveDate <= asOfDate) 
    .OrderByDescending(e => e.EffectiveDate) 
    .Take(1); 

:

return (queryable 
    .Where(e => e.EffectiveDate <= asOfDate) 
    .OrderByDescending(e => e.EffectiveDate)) 
    .Take(1); 

은 동일합니다.