这是我的查询:
List<string> kwList = GetFilterKeywords(); // returns NULL none keyword selected
var res = from d in ctx.Books
where (kwList == null || kwList.Contains(d.Name))
select d;
如果 kwList 为 NULL,则添加 where 子句似乎是不合法的。所以我的问题是:有没有办法在 IF/ELSE IF 构造中向同一个查询添加更多 where 子句?
我是说:
var res = from d in ctx.Books
select d;
if (kwList != null)
{
res.Where(d => kwList.Contains(d.Name);
}