使用XPATH
在C#中默認名稱空間導航XML>使用包含默認名稱空間的XML文檔通常需要仔細處理XPATH表達式以正確選擇節點。 一個常見的錯誤是省略名稱空間前綴,導致結果集。
> 通過將命名空間合併到您的XPath查詢中,可以解決此問題。 雖然不是嚴格要求,但XPathNavigator
或SelectNodes
的方法就足夠了。
SelectSingleNode
至關重要的步驟是創建
XmlNamespaceManager
<code class="language-csharp">XmlElement el = ...; //TODO: Obtain your XmlElement XmlNamespaceManager nsmgr = new XmlNamespaceManager(el.OwnerDocument.NameTable); nsmgr.AddNamespace("x", el.OwnerDocument.DocumentElement.NamespaceURI); var nodes = el.SelectNodes("/x:outerelement/x:innerelement", nsmgr);</code>初始化
>。 然後,它使用前綴“ x”註冊根元素的默認名稱空間。 最後,現在使用XPATH表達式調用XmlNamespaceManager
>,包括“ X”前綴,從而可以選擇目標節點。 切記用代碼替換NameTable
評論以獲取您的SelectNodes
//TODO
。
以上是如何將XPath與C#中的默認名稱空間一起選擇節點?的詳細內容。更多資訊請關注PHP中文網其他相關文章!