动态linq和可空日期的问题是nulla

时间:2014-07-18 20:23:49

标签: c# sql linq dynamic

我对此动态linq查询条件存在问题:

string query = "Filed = 0 AND DeletedDate IS NOT NULL";
var q = (from u in ctx.Table.Where(query).OrderBy(s => s.InitDate) select u)

我收到此例外:

  

运营商'和'与操作数类型不兼容'布尔'和' DateTime?'

2 个答案:

答案 0 :(得分:1)

您可能会收到该错误,因为Dynamic LINQ不支持IS NOT运算符。 您可以通过从Microsoft's site下载文件和文档来找到有关库支持的更多信息。

相反,您可以传递的是:

Filed = 0 AND DeletedDate != null

甚至:

Filed = 0 AND DeletedDate <> null

以下是支持支持的运算符表(取自上面链接的文档)。

Dynamic LINQ operators

答案 1 :(得分:0)

尝试

(Filed = '0') AND (DeletedDate IS NOT NULL)