आप अपने लिए ऐसा करने के लिए कुछ एक्सटेंशन विधियां जोड़ सकते हैं। Element
विधि के लिए आप शून्य या तत्व स्वयं वापस कर देंगे। Elements
विधि के लिए आप एक खाली परिणाम या लक्ष्य तत्व वापस कर देंगे।
ये विस्तार तरीके हैं:
public static class XElementExtensions
{
public static XElement ElementOrDefault(this XElement element, XName name)
{
if (element == null)
return null;
return element.Element(name);
}
public static IEnumerable<XElement> ElementsOrEmpty(this XElement element, XName name)
{
if (element == null)
return Enumerable.Empty<XElement>();
return element.Elements(name);
}
}
आप उन्हें इस तरह से उपयोग कर सकते हैं:
var query = theElement.ElementOrDefault("Blah")
.ElementOrDefault("Whatever")
.ElementsOrEmpty("Something");
if (query.Any())
// do something
else
// no elements
आप ElementsOrEmpty
के लिए क्वेरी नहीं किया है और आपका पिछला अनुरोध ElementOrDefault
के लिए आप की जाँच करेगा है Enumerable.Any
विधि का उपयोग करने के बजाय शून्य के लिए।
स्रोत
2011-06-20 16:36:08
बिल्कुल सही। धन्यवाद। – MangoBrainz
उम्मीद है कि आपके कीबोर्ड से .net फ्रेमवर्क v.next पर उम्मीद है। –