【发布时间】:2012-04-12 04:38:45
【问题描述】:
我有一个带有字符串属性的类。我在读取它时使用了 coalesce 运算符,因为它可能为 null,但它仍然会抛出 NullRefrenceExeption。
string name = user.Section.ParentSection.Name ?? string.Empty;
更具体地说,它的“.ParentSection”是空的,是不是因为它甚至没有“.name”?如果是这种情况,我应该先用 if 块测试“.ParentSection”吗?
我认为 Coalesce 操作员有一些我不明白的地方,希望有人能解释一下这里出了什么问题。
【问题讨论】:
-
正如答案所暗示的那样,空合并运算符不会在这里抛出;引发异常的是对其左操作数的求值。
标签: c# string c#-4.0 null-coalescing-operator null-coalescing