我在我的C#程序中使用Xml遇到麻煩。C#解析Xml選擇節點
http://pastebin.com/Ufxaght6(沙盒)
我試圖獲得對XML的任何信息,我成功了使用上的節點遞歸循環的XML,但我想用的東西更有效。
我想這一點:
XmlDocument document = new XmlDocument();
document.LoadXml(response);
XmlNode node = document.SelectSingleNode("/getnewsalesresult/request/user");
if (node != null)
Logger.WriteLine(node.InnerText);
else
Logger.WriteLine("fail");
這總是給人一種空。 我認爲問題來自'getnewsalesresult'(通配符也許?)。
從XML:
<getnewsalesresult xmlns="http://www.sandbox.priceminister.com/res/schema/getnewsales" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
XSI:的schemaLocation = 「http://www.sandbox.priceminister.com/res/schema/getnewsales http://www.sandbox.priceminister.com/res/schema/getnewsales/getnewsales.2014-02-11.xsd」>
任何想法?
在此先感謝。
我懷疑這是一個命名空間問題。嘗試http://stackoverflow.com/questions/1145659/ignore-namespaces-in-linq-to-xml – AaronLS 2014-08-28 14:59:07
我不想成爲勺子飼料,但我不知道如何開始爲此:) – 2014-08-28 15:04:48
SelectSingleNode需要xpath,首先從測試第一級開始:'document.SelectSingleNode(「/ getnewsalesresult」);'如果它不返回任何東西try'document.SelectSingleNode(「/ [local-name()='getnewsalesresult']」 );''或'document.SelectSingleNode(「/ * [local-name()='getnewsalesresult']」);' – AaronLS 2014-08-28 15:12:48