Eu tenho uma consulta como esta
(from u in DataContext.Users
where u.Division == strUserDiv
&& u.Age > 18
&& u.Height > strHeightinFeet
select new DTO_UserMaster
{
Prop1 = u.Name,
}).ToList();
Quero adicionar as várias condições, como idade, altura com base no fato de essas condições terem sido fornecidas ao método que executa esta consulta. Todas as condições incluirão a Divisão do usuário. Se a idade foi fornecida, desejo adicioná-la à consulta. Da mesma forma, se a altura for fornecida, quero adicioná-la também.
Se isso fosse feito usando consultas sql, eu teria usado o construtor de strings para anexá-las à consulta strSQL principal. Mas aqui no Linq eu só consigo pensar em usar uma condição IF onde escreverei a mesma consulta três vezes, com cada bloco IF tendo uma condição adicional. Existe uma maneira melhor de fazer isso?