我有一個包含if語句的xpath。我想用c#來評估它。如果我沒有在任何XPath的功能我用如何用C語言解析xpath語句#
node.SelectSingleNode(xpath);
當我試着使用if語句,我得到一個無效的令牌錯誤做到這一點。
這是我的XPath:
if (substring-before(substring-after(//IzdaniRacunEnostavni/@xsi:noNamespaceSchemaLocation,'http://www.gzs.si/e-poslovanje/sheme/'),'_EnostavniRacun.xsd')='eSLOG_1-6') then //Postavka/StevilkaVrstice[text()!='']/../../ZneskiPostavke/VrstaZneskaPostavke[text() ='203']/../ZnesekPostavke else //Postavka/StevilkaVrstice[text() !='']/../../ZneskiPostavke/VrstaZneskaPostavke[text() ='66']/../ZnesekPostavke
如果我測試此XPath與http://videlibri.sourceforge.net/cgi-bin/xidelcgi它顯示爲有效。
是http://stackoverflow.com/questions/971067/is-there -an-if-then-else-statement-in-xpath你在找什麼?請注意,您添加的驗證器是用於XPath 2.0,它不是.Net Framework的Xml類的一部分。 – 2014-09-03 06:19:24
嗯,我相信.NET 4.5支持xpath 2.0 ... – n32303 2014-09-03 06:22:59
不應該是「eq」而不是等於在IF表達式中籤名(=) – Vizard 2014-09-03 06:24:42