使用Microsoft.EntityFrameworkCore.Dm执行查询通过跟踪出来的语句执行失败了以下附上语句:
SELECT CAST(COUNT() AS INT)
FROM LQMS.FlowScheme AS f
WHERE TRUE & CASE
WHEN f.DeleteMark = 0 THEN TRUE
ELSE FALSE END;
我在中间加上缺失的&符号就执行成功了以下附上语句:
SELECT CAST(COUNT(*) AS INT)
FROM LQMS.FlowScheme AS f
WHERE TRUE && CASE
WHEN f.DeleteMark = 0 THEN TRUE
ELSE FALSE END;1
问题已处理!自己埋的坑。我自己扩展了一个and的拼接方法 当时使用的是EntityFramework并未发现问题 而当前使用的是Microsoft.EntityFrameworkCore需要使用AndAlso函数而非直接拼接
本地测试了一下,这两种写法都是可以的。
TRUE AND CASE WHEN
和
TRUE && CASE WHEN