<?xml version="1.0"?>
-<bookstore>
<book >
<title>aaaa</title>
-<author >
<first-name>firts</first-name>
<last-name>last</last-name>
</author>
<price>8.23</price>
<otherbooks>
<book >
<title>bbb</title>
<price>18.23</price>
</book>
<book >
<title>ccc</title>
<price>11.22</price>
</book>
</otherbooks>
</book>
</bookstore>
我想選擇不同層次的所有書籍,然後顯示每個書籍(作者,書名和價格)的相關信息。目前,代碼還會顯示第一本書的其他書籍。什麼是僅顯示所需信息的最佳方式。 我需要使用XPath。xpath顯示來自不同層次的節點的數據
xPathDoc = new XPathDocument(filePath);
xPathNavigator = xPathDoc.CreateNavigator();
XPathNodeIterator xPathIterator = xPathNavigator.Select("/bookstore//book");
foreach (XPathNavigator navigator in xPathIterator)
{
XPathNavigator clone = navigator.Clone();
clone.MoveToFirstChild();
Console.WriteLine(clone.Name + " : " + clone.Value);
while (clone.MoveToNext())
{
Console.Write(clone.Name + " : " + clone.Value + " | ");
}
}
你是什麼意思與「不同層次」?你的選擇器檢索' '元素在' '以下的所有級別。你不想要選擇「書/其他書/書」嗎? –
hielsnoppe
我想要選擇所有的書籍,但我想顯示有關每本書的信息,此刻第一本書還包括信息,然後再次顯示在自己的 –
witpo
那麼是你目前的解決方案打破,或者你想要改善它?我認爲你目前的選擇器應該能夠實現你所描述的。 – hielsnoppe