【发布时间】:2017-11-02 10:53:25
【问题描述】:
我通过网络请求得到以下响应
<Shofar Target_="Base" >
<RapidOnSite_Pump Key="1" State="Idle" Amount="20" />
<RapidOnSite_Pump Key="2" State="Idle" Amount="15" />
<RapidOnSite_Pump Key="3" State="Despencing" Amount="25"/>
- <Verb_List>
<Verb_Item Key="1" Execute="RapidOnSite_Pump_AdHoc" Result="OK"
Detail="All Pumps►5" />
</Verb_List>
从这个字符串中我只想选择状态不是空闲的节点。
我的代码
string responseFromServer = MY_RESPONSE
XmlDocument mainxml = new XmlDocument();
mainxml.LoadXml(responseFromServer);
XmlNodeList xnList = mainxml .SelectNodes("/Shofar/RapidOnSite_Pump [@State!='Idle']");
但是通过这段代码我没有得到要求。谁能帮帮我?
【问题讨论】:
-
你必须使用
XmlDocument或者你可以使用LINQ to XML? -
任何东西。我只想要必要的回应。
-
刚刚检查了您的代码 - 它工作正常。返回一个节点
-
你确定吗?为什么我没有得到。让我展示我的完整代码
-
public void GetCartResponse() { string responseFromServer = ""; responseFromServer = RetailLibrary.BusinessObject.Common.WebRequestCall("MyURL"); if (responseFromServer != "") { XmlDocument mainxml = new XmlDocument(); mainxml.LoadXml(responseFromServer); XmlNodeList xnList = mainxml.SelectNodes("/Shofar/RapidOnSite_Pump [@State!='Idle']"); } }
标签: c# xml asp.net-mvc xml-parsing