使用null condition

时间:2017-09-15 09:34:29

标签: vb.net winforms

我遇到了InvalidOperationException

  

“Nullable对象必须具有值”

_socialSecurityBracket为null / nothing时,尝试使用null条件运算符设置textform的值。 MSDN中没有任何内容告诉我它为什么会出错。

Class SocialSecurityBracket
    <Key>
    Public Property RowID As Integer?
    Public Property EmployerContributionAmount As Decimal
End Class

Public Sub Display()
    txtSocialSecurity.Text = _socialSecurityBracket?.EmployerContributionAmount
End Sub

1 个答案:

答案 0 :(得分:1)

您似乎试图将可为空的十进制数分配给字符串属性。除了“有问题”之外,错误没有用,但是你需要进行类型转换。由于EmployerContributionAmount本身不可为空,因此应执行以下操作:

txtSocialSecurity.Text = _socialSecurityBracket?.EmployerContributionAmount.ToString()

(如果_socialSecurityBracket为null,则将分配null,否则十进制属性将转换为字符串。)

相关问题