1
我在文檔的根目錄下有一個XPathNavigator。有幾個級別,我想總結一組數字值。我總是可以遍歷節點並自己添加它們,但由於我知道XPath規範包含一個sum函數,因此我決定嘗試使用它。我遇到了一個錯誤。我可以在XPathNavigator中使用XPath函數嗎?
System.Xml.XPath.XPathException - Expression must evaluate to a node-set.
這是我的代碼。
XPathDocument doc = new XPathDocument(new StringReader(myLiteralXML));
XPathNavigator nav = doc.CreateNavigator();
string myXPath = "sum(/root/level1/level2/elementsToAdd)";
XPathNavigator sumNode = nav.SelectSingleNode(myXPath);
我預計sumNode.Value
給我我的總和(作爲一個字符串)。但是,當我嘗試填充sumNode
時,我得到上面列出的例外。
我知道我的XPath是有效的(或者至少XMLSpy說這是)。我能不能在XPathNavigator上使用XPath函數 ?我只是做錯了嗎?
(同樣,只是好奇,我是不是浪費在一條死衚衕的做法沒人我的時間是一個使用,並冒着不能夠從現在起一年這是什麼東西做弄清楚?)
從來不知道那裏。謝謝。 – 2009-09-03 20:41:33