c# - LINQ to XML and LINQ to Objects syntax -


क्यों है:

  (चेकबॉक्स) lstControls.Where (x = & gt; x आईडी == "कुछ_आईडी")। सिंगलऑर डीफॉल्ट ();  

के रूप में कुशल नहीं:

  (चेकबॉक्स) lstControls.SingleOrDefault (x = & gt; x.ID == "some_id");  

और एक बहुत ही अच्छी तरह से बनने वाले XML दस्तावेज़ के लिए और आप केवल उस तत्व का नाम जानते हैं जिसे आप ढूंढ रहे हैं यह सबसे अच्छा कथन है जो आप तत्व ढूंढने के लिए उपयोग कर सकते हैं: < / P>

  var xmlElem = (xDocument.Descendants में n से) (जहां स्ट्रिंग) n.Attribute ("name") == "some_node_name" n चुनें) .SingleOrDefault ();  

धन्यवाद ....

अगर मैं नहीं हूँ गलत, बड़ी दक्षता के मामले में, यह वही है यह सिर्फ एक अतिरिक्त विधि कॉल है।

दूसरे प्रश्न के संबंध में,

  var xmlElem = (xDocument.Descendants में n से) जहां (स्ट्रिंग) n.Attribute (" नाम ") ==" some_node_name "चुनें n) .SingleOrDefault ();  

को और अधिक बस के रूप में व्यक्त किया जा सकता है

  var xmlElem = xDocument.Descendants ()। SingleOrDefault (n = & gt; (स्ट्रिंग) n. विशेषता (" नाम ") ==" some_node_name ");  

Comments