【发布时间】:2014-09-10 01:49:54
【问题描述】:
我对这个动态 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)
我收到此异常:
运算符“and”与操作数类型“Boolean”和“DateTime”不兼容?
【问题讨论】:
我对这个动态 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)
我收到此异常:
运算符“and”与操作数类型“Boolean”和“DateTime”不兼容?
【问题讨论】:
您可能会收到该错误,因为 Dynamic LINQ 不支持 IS NOT 运算符。
您可以通过从Microsoft's site 下载文件和文档来找到有关库支持的更多信息。
相反,你可以通过的是:
Filed = 0 AND DeletedDate != null
甚至:
Filed = 0 AND DeletedDate <> null
这是它支持的运算符表(取自上面链接的文档)。
【讨论】:
试试
(Filed = '0') AND (DeletedDate IS NOT NULL)
【讨论】: