Tôi có một truy vấn như thế này
(from u in DataContext.Users
where u.Division == strUserDiv
&& u.Age > 18
&& u.Height > strHeightinFeet
select new DTO_UserMaster
{
Prop1 = u.Name,
}).ToList();
Tôi muốn thêm các điều kiện khác nhau như tuổi, chiều cao dựa trên việc các điều kiện đó có được cung cấp cho phương thức chạy truy vấn này hay không. Tất cả các điều kiện sẽ bao gồm Phân chia người dùng. Nếu tuổi được cung cấp, tôi muốn thêm tuổi đó vào truy vấn. Tương tự, nếu chiều cao được cung cấp, tôi cũng muốn thêm chiều cao đó.
Nếu điều này được thực hiện bằng cách sử dụng truy vấn sql, tôi đã sử dụng trình tạo chuỗi để nối chúng vào truy vấn strSQL chính. Nhưng ở đây trong Linq, tôi chỉ có thể nghĩ đến việc sử dụng điều kiện IF, nơi tôi sẽ viết ba lần truy vấn giống nhau, với mỗi khối IF có một điều kiện bổ sung. Có cách nào tốt hơn để làm điều này?