比方說,我有一個方法的5個參數,這些是說,3個不同的表中的列。方法調用者可以將null傳遞給所有參數。部分我的Linq如下用所有參數選擇
public Customer GetCustomer(int id, DateTime? dob, string FName, string MI, string LName)
{
query = (from customer in CustomerDb.customers
join
,...
where cpn.FirstName == FName && cpn.LName == LName
..
select customer);
}
現在如果他們只提供一個FName,我希望我的where子句只包含FName屬性。而且,如果 - 其他或切換大小寫的唯一方法來實現這一目標?我不能把一切都放在查詢中,因爲如果他們只提供一個FName,我會在dob,id,MI和LName中尋找空值。而且他們可以將null傳遞給所有值(在int情況下爲0),這意味着我需要返回DB中的所有內容,而不是空值的AND。
任何阻止您在設置查詢後將where語句添加到'IQueryable'的事情? –