EF生的SQL语句条件中会多出(XX is null) or(XX is null)的解决方法

在调试代码的时候发现,EF生成的SQL查询超慢(40s的查询语句),然后自己根据需求写的SQL运行只需要(0.001s)左右,对比了一下俩个SQL语句,发现ef生成的在条件后面会多出(XX IS NULL) OR(XX IS NULL)语句的尾巴,删掉后,就正常了。

 经过多番查询后找到以下解决方案:

1、this.Configuration.UseDatabaseNullSemantics = true; //关闭Ef自动生成的null判断语句

2、在varchar类型上增加限定 [StringLength]或者是[Require]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章