当前位置 : 主页 > 编程语言 > c语言 >

VB.NET Nullables

来源:互联网 收集:自由互联 发布时间:2021-06-24
我在VB.net中遇到了无法预测的无效预测效果.有问题的对象定义了一个属性: Public Property Value As Int32? 当我尝试使用IIf合并该值时,我得到一个null异常 cmd.Parameters.AddWithValue("@HOValue", IIf(
我在VB.net中遇到了无法预测的无效预测效果.有问题的对象定义了一个属性:

Public Property Value As Int32?

当我尝试使用IIf合并该值时,我得到一个null异常

cmd.Parameters.AddWithValue("@HOValue", IIf(headOffice.Value.HasValue, headOffice.Value .Value, DBNull.Value))

在C#中,我知道没有隐式转换为nullables,因此你不能使用??,但为什么在VB.NET中评估IIf的第一部分?

Iff是一个函数,即它的参数在执行之前被计算.当headOffice.Value为null时,则无法在此处评估headOffice.Value.Value.
网友评论