在這裏,我有XML:我的XPath有什麼問題?
<root>
<field ...>offer</field>
<field type="ferrari" ...>car</field>
<field ...>company</field>
<field ...>whatever</field>
</root>
,我想知道«汽車»的«類型»通過提取的元素。我想是這樣的:
/root[field='car']/field (or /root[field='car'])
已經足夠了,但是當我試圖執行我的C#代碼:
XmlDocument document = new XmlDocument();
document.InnerXml = "..."; // xml of above
XmlNode node = document.DocumentElement.SelectSingleNode("... xpath of above ...");
對象«節點»它總是包含的第一個子元素«現場»(中提供)並且在SelectNodes(「... same xpath ...」)的情況下返回所有元素«field»忽略條件。
有什麼問題? XPath錯了?
你的XML似乎倒退。不應該類型=「汽車」和元素的價值是法拉利? – 2010-01-27 18:26:00
那麼我不得不對這種XML做解析器,我不能改變它的結構,因爲這是客戶的定義。但我同意你這樣的結構有點畸形... – Alexian 2010-01-28 14:19:31