我在 VB.NET 中工作,我想知道 和 之间的Nothing
区别System.DBNull
。
当我当时触发保存查询时,我在运行时从网格中给出值,如下所示:
gvMain.Rows(j).Cells("Brand").Value.ToString()
但是当它的值为 时它会向我显示错误,并且当它的Nothing
值为System.DBnull
在这种情况下该怎么办?
提前致谢
关键字Nothing
用于指定或指定引用类型的 var 没有指向任何东西,没有对象为此 var 实例化。
DBNull.Value
另一方面,是一个对象,用于指出DataBase 的某个字段的类型为空值。
Nothing
是类型System.Object.
它代表任何数据类型的默认值。
DBNull.Value
是类型System.DBNull
如果某物显示为System.DBNull
,这意味着即使它没有值,它也有一个有效的指针。您可能已经发现,它不能转换为字符串、整数等。您必须进行检查(最好使用IsDBNull
.
If IsDBNull(gvMain.Rows(j).Cells("Brand").Value) Then
Return String.Empty
Else
Return gvMain.Rows(j).Cells("Brand").Value.ToString().Trim()
End If