我正在使用Linq代码来查询数据库,并且根据布尔值,我需要在使用语句和使用!语句(即NOT)之间切换,如何在不使用下面的if / if的情况下执行此操作否则这意味着我有两个非常相同的代码。
请参阅以下示例:
private string getFromDB(bool decision)
{
if (decision)
{
return db.Where(p => (Types.Contains(p.CurrentOwner)));
}
else
{
return db.Where(p => !(Types.Contains(p.CurrentOwner)));
}
}
它必须可用于LINQ查询,上面的示例简化为问题的本质。
提前致谢!
答案 0 :(得分:5)
private string getFromDB(bool decision)
{
return db.Where(p => (Types.Contains(p.CurrentOwner) == decision));
}