c# - 是否有方便的语法来检查可以为 null 的嵌套属性?

标签 c# syntax null

<分区>

Possible Duplicate:
Deep Null checking, is there a better way?

例如,如果您在 Foo1.Bar1.Foo2.Bar2 上执行逻辑(并且每个属性都可以为 null),您不能只对 foo.Bar1.Foo2.Bar2 执行逻辑,因为这是可能的你得到空引用异常

目前我就是这样做的

if (foo1!=null && foo1.Bar1!=null && foo1.Bar1.Foo2 !=null && foo1.Bar1.Foo2.Bar2!=null)
return DoStuff(foo1.Bar1.Foo2.Bar2); //actually a logic based on the value of Bar2
else return null; 

有没有更优雅或更方便的方法来做到这一点?

最佳答案

不,没有。

唯一可能有帮助的是评估 DoStuff 是否实际定义在正确的类中。

关于c# - 是否有方便的语法来检查可以为 null 的嵌套属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8132324/

相关文章:

c# - 访问OTF字体

c# - azure 中的文件存储。 GDI+ 中发生一般错误

c# - 网站使用来自错误目录的代码隐藏文件?

delphi - 为什么Assigned 对于未初始化的变量返回 true?

ruby - 如何使用 ruby​​ 的多重赋值给 void 变量赋值?

c# - 设置 Html 复选框从代码隐藏检查,无需 runat=server

C++构造函数语法解释

c# - 将字符串拆分成行的最佳方法

php - 非常简单的 MySQL 语法错误,我是新手

sql 合并可能具有空值的两列