option strict on禁止' boolean之间的隐式转换?'在SQL语句中为boolean

时间:2014-11-23 17:16:32

标签: sql-server vb.net linq asp.net-mvc-4

我正在研究MVC4(VB)应用程序。

我正在尝试计算满足特定条件的记录数:

Dim bridgeSelectedCount As Integer = db.IdeaGenerationDatas.Where(Function(s) s.PdId = ProjDivId And s.Selected = True).Count()

使用“option strict on”设置,编译器会抱怨代码的这一部分:

s.PdId = ProjDivId And s.Selected = True

我不能放

convert.toboolean

围绕该部分,因为SQL评估在运行时会阻塞它。

s.Selected

CAN评估为NULL所以我怀疑这是错误标注。我怎么能绕过这个? (无需更改DB表中的列定义)

由于

2 个答案:

答案 0 :(得分:0)

如果它与nullable类型相关,则可能有所帮助。

Function(s) ((s.PdId.HasValue AndAlso s.PdId.value = ProjDivId) And 
(s.selected.HasValue AndAlso s.selected.value = True))

答案 1 :(得分:0)

我将问题的DB字段设为NOT NULL。