链接中的多个where子句用或分隔

时间:2012-06-17 15:42:05

标签: linq-to-sql

我有以下情况:

用户可以在搜索过程中从以下任何一个选项中进行选择:

  • 0
  • 1-3
  • 4-6
  • 7-9
  • 10-12
  • 12 +

说他们选择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+可能会达到多少。

由于

1 个答案:

答案 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)