我有一个字符串属性的类。我在阅读时使用了coalesce操作符,因为它可能为空,但它仍会抛出一个NullRefrenceExeption。C#coalesce运算符抛出
string name = user.Section.ParentSection.Name ?? string.Empty;
更具体地说,它的“.ParentSection”是空的,因为它甚至没有“.name”?如果是这种情况,我应该先用“if”块测试“.ParentSection”吗?
我假设有一些关于Coalesce操作符的东西我不明白,希望有人可以对这里发生什么事情有所了解。
http://msdn.microsoft.com/en-us/library/ms173224.aspx – Rawling 2012-03-28 14:50:02
正如答案所暗示的那样,空合并运算符不会在这里抛出;它的左操作数的评估抛出异常。 – phoog 2012-03-28 14:56:52