我有以下代码行:
var selectedDomainID = lkuDomainType.EditValue.Equals(null)
? string.Empty
: lkuDomainType.EditValue;
有时这会生成一个 NullReferenceException
。我不明白的是为什么。我的代码的全部意义不是检查 null
并且如果是则分配 string.empty
吗?当我 checkin DEBUG 时,它说明 EditValue == null
那么我错过了什么?
最佳答案
使用 lkuDomainType.EditValue == null
,否则您将尝试在空对象上调用实例方法。但更好的选择可能是 lkuDomainType.EditValue ??字符串.空
。还要注意 lkuDomainType
是否为 null,除非它是类而不是对象。
关于c# - 如果 null.Equals(null) 为什么我会得到 NullReferenceException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3459748/