C # में, कहें कि आप इस उदाहरण में PropertyC का मान खींचना चाहते हैं और ObjectA, PropertyA और PropertyB सभी शून्य हो सकते हैं।
ObjectA.PropertyA.PropertyB.PropertyC
मैं कम से कम कोड वाली प्रॉपर्टी को सुरक्षित रूप से कैसे प्राप्त कर सकता हूं?
अभी मैं जाँच करूँगा:
if(ObjectA != null && ObjectA.PropertyA !=null && ObjectA.PropertyA.PropertyB != null)
{
// safely pull off the value
int value = objectA.PropertyA.PropertyB.PropertyC;
}
इस तरह कुछ और करना अच्छा होगा (छद्म कोड)।
int value = ObjectA.PropertyA.PropertyB ? ObjectA.PropertyA.PropertyB : defaultVal;
संभवतः एक अशक्त-सह-संचालक के साथ और भी अधिक ढह गई।
EDIT मूल रूप से मैंने कहा कि मेरा दूसरा उदाहरण js जैसा था, लेकिन मैंने इसे psuedo-code में बदल दिया क्योंकि यह सही ढंग से बताया गया था कि यह js में काम नहीं करेगा।
ObjectA
याPropertyA
अशक्त हों, आपको "ऑब्जेक्ट अपेक्षित" त्रुटि मिलनी चाहिए ।