我有以下情况:
用户可以在搜索过程中从以下任何一个选项中进行选择:
说他们选择0,4-6和12 +
SQL where语句:
Where (total_count = 0
OR (total_count >= 4 AND total_count <= 6)
OR total_count > 12)
现在要获取这些值,我正在迭代一个复选框列表集合,所以正在尝试:
query = query.Where(tc => tc.total_count >= 4 && tc.total_count <= 6);
但这是在语句之间添加AND,我怎么能添加一个或。我意识到我可以构建一个包含整数的列表并执行包含但我不知道12+可能会达到多少。
由于
答案 0 :(得分:0)
我没有看到添加“OR”的问题。所有“WHERE”子句需要的是一个谓词(返回true或false的东西)。或者我可能错过了这一点。
关于你的SQL示例,等价物将是
query.Where(tc=> tc.total_count == 0 || (tc.total_count >= 4 && tc.total_count <= 6) || tc.total_count > 12)