C# eleganter Weg, um zu überprüfen, ob eine Eigenschaft die Eigenschaft den Wert null

In C#, sagen Sie, dass Sie möchten, ziehen Sie einen Wert aus der PropertyC in diesem Beispiel und ObjectA, PropertyA und PropertyB können alle null sein.

ObjectA.PropertyA.PropertyB.PropertyC

Wie bekomme ich PropertyC sicher mit der geringsten Menge an code?

Recht jetzt würde ich überprüfen:

if(ObjectA != null && ObjectA.PropertyA !=null && ObjectA.PropertyA.PropertyB != null)
{
    //safely pull off the value
    int value = objectA.PropertyA.PropertyB.PropertyC;
}

Wäre es schön, etwas zu tun, mehr so aus (pseudo-code).

int value = ObjectA.PropertyA.PropertyB ? ObjectA.PropertyA.PropertyB : defaultVal;

Möglicherweise sogar noch weiter, brach mit null-coalescing operator.

BEARBEITEN Ursprünglich sagte ich meinem zweiten Beispiel war wie js, aber ich geändert, um Pseudo-code, da es wurde richtig darauf hingewiesen, dass es nicht funktionieren würde, in js.

InformationsquelleAutor der Frage Jon Kragh | 2010-08-12

Schreibe einen Kommentar