Ich habe eine solche Anfrage
(from u in DataContext.Users
where u.Division == strUserDiv
&& u.Age > 18
&& u.Height > strHeightinFeet
select new DTO_UserMaster
{
Prop1 = u.Name,
}).ToList();
Ich möchte die verschiedenen Bedingungen wie Alter und Größe hinzufügen, je nachdem, ob diese Bedingungen für die Methode bereitgestellt wurden, mit der diese Abfrage ausgeführt wird. Alle Bedingungen umfassen die Benutzerabteilung. Wenn das Alter angegeben wurde, möchte ich das der Abfrage hinzufügen. Wenn die Höhe angegeben wurde, möchte ich dies ebenfalls hinzufügen.
Wenn dies mit SQL-Abfragen geschehen wäre, hätte ich den String Builder verwendet, um sie an die strSQL-Hauptabfrage anzuhängen. Aber hier in Linq kann ich mir nur vorstellen, eine IF-Bedingung zu verwenden, bei der ich dieselbe Abfrage dreimal schreibe, wobei jeder IF-Block eine zusätzliche Bedingung hat. Gibt es einen besseren Weg, dies zu tun?