的属性时,一个方便的语法返回null,而不是例外考虑一个简单的C#示例:是否有访问一个空对象
var person = new Person {Name = "Fred", MailingAddress=null };
var result = String.Format("{0} lives at {1}",person.Name, person.MailingAddress.Street);
显然,这将引发一个NullReferenceException因为MailingAddress proptery为空。
我可以重写第二行:
var result = String.Format("{0} lives at {1}", person.Name, person.MailingAddress == null ? (String)null : person.MailingAddress.Street);
有没有更简单的说表达这样?
[Demeter法](http://en.wikipedia.org/wiki/Law_of_Demeter) - 您不应该通过Person对象访问MailingAddress的Street属性。 –