이와 같은 쿼리가 있습니다.
(from u in DataContext.Users
where u.Division == strUserDiv
&& u.Age > 18
&& u.Height > strHeightinFeet
select new DTO_UserMaster
{
Prop1 = u.Name,
}).ToList();
이 쿼리를 실행하는 메서드에 해당 조건이 제공되었는지 여부에 따라 연령, 신장과 같은 다양한 조건을 추가하고 싶습니다. 모든 조건에는 사용자 부문이 포함됩니다. 나이가 제공된 경우 쿼리에 추가하고 싶습니다. 마찬가지로 높이가 제공된 경우에도 추가하고 싶습니다.
이것이 SQL 쿼리를 사용하여 수행된다면 문자열 작성기를 사용하여 주 strSQL 쿼리에 추가했을 것입니다. 그러나 여기 Linq에서는 각 IF 블록에 추가 조건이있는 동일한 쿼리를 세 번 작성하는 IF 조건 만 사용할 수 있습니다. 이 작업을 수행하는 더 좋은 방법이 있습니까?