2008-10-02 19 views
9

सी #.NET: XPATH का उपयोग कर XML दस्तावेज़ से एक विशिष्ट नोड को कैसे हटाया जाए?

XPATH का उपयोग कर XML दस्तावेज़ से एक विशिष्ट नोड को कैसे हटाया जाए?

+0

यहाँ जवाब है http://stackoverflow.com/questions/20611/ हटाने-नोड्स-से-एक-xmldocument – Rakesh

उत्तर

2

XPath उपयोग कर रहे थे केवल एक दस्तावेज से नोड्स का चयन कर सकते हैं, तो दस्तावेज़ को संशोधित नहीं अनुमान लगाया।

+2

तकनीकी रूप से सही है हालांकि आप System.Xml लाइब्रेरी का उपयोग कर किसी XML दस्तावेज़ को संशोधित कर सकते हैं। XPath इसे एक्सप्लोर करने के लिए xml दस्तावेज़ के सही हिस्से में जाने में आपकी सहायता करेगा। – Vidar

4

यहां आप जाते हैं। ChildNodeName, केवल नोड नाम या XPath क्वेरी हो सकता है।

XmlDocument doc = new XmlDocument(); 

// Load you XML Document 

XmlNode childNode = doc.SelectSingleNode(childNodeName); 

// Remove from the document 
doc.RemoveChild(childNode); 

LINQ का उपयोग कर एक अलग तरीका नहीं है, लेकिन मैं आपको .NET 2.0

17

आप नोड्स, कि दस्तावेजों जड़ के प्रत्यक्ष बच्चे नहीं हटाना चाहते हैं, तो आप ऐसा कर सकते हैं:

XmlDocument doc = new XmlDocument(); 
// ... fill or load the XML Document 
XmlNode childNode = doc.SelectSingleNode("/rootnode/childnode/etc"); // apply your xpath here 
childNode.ParentNode.RemoveChild(childNode); 
संबंधित मुद्दे