为什么数据库中的NULL值失败在VB.net中没有任何内容

时间:2015-02-27 07:13:09

标签: vb.net winforms

我不是vb.net专家,但现在已经开始工作了。 检索数据库的值,在某些情况下,对于datetime列(Sql数据库),它是NULL。 当使用类似的东西在vb.net中检索它时。

 select testcolumn from testtable

并将结果转换为数据表。 值验证失败(即使数据库中检索的值为null)

If Not dt("testcolumn") Is Nothing

End If

理想情况下,此验证对我来说是决定是否应将值分配给类的属性。但是因为这个fails.next异常我得到的是无效的演员,因为我尝试做像

这样的事情
myClass.datetimeProperty=dt("testcolumn").ToString()

任何原因,并且只能执行

的额外验证
If Not string.isnullOrEmpty(dt("testcolumn)

1 个答案:

答案 0 :(得分:2)

您必须检查Nothing

,而不是检查DBNull.Value
If dt("testcolumn") IsNot DbNull.Value
'your code
End If

或另一种选择:

If NOT IsDbNull(dt("testcolumn")) Then
   'your code
End If