【发布时间】:2017-08-24 21:41:13
【问题描述】:
我已经确定在执行以下表达式时:
int aNum = 52;
var myArtifacts = mydbcontext.artifacts.Where(a => a.ParentID == aNum ).ToList();
在mysql上执行的查询是:
SELECT
`Extent1`.`ID`,
`Extent1`.`ParentID`
FROM `artifacts` AS `Extent1`
WHERE ((`Extent1`.`ParentID` = 52) AND (52 IS NOT NULL));
谁能解释一下为什么要添加最后一个额外条件?
AND(52 不为空))
【问题讨论】:
-
嗯,我已经在参数中看到了这一点,但对于常量却没有。尝试将
DbContext.Configuration.UseDatabaseNullSemantics设置为true。 -
其实是个参数,不好意思。我只是在这里放了一个数字以使其更简单
-
参数的数据类型是什么?
-
整数。所以...我现在似乎明白了...检查可空类型?
-
整数还是可以为空的整数?
标签: c# mysql entity-framework