我有一个XML文件如下,
<?xml version="1.0" encoding="gbk" ?>
- <soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
- <soapenv:Body>
- <ns3:MtSOAPRespBody xmlns:ns3="http://sms.zjol.com.cn/esms/">
- <ns3:message>
<id />
<result>0</result>
</ns3:message>
</ns3:MtSOAPRespBody>
</soapenv:Body>
</soapenv:Envelope>请问怎么读取其中的result值????
<?xml version="1.0" encoding="gbk" ?>
- <soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
- <soapenv:Body>
- <ns3:MtSOAPRespBody xmlns:ns3="http://sms.zjol.com.cn/esms/">
- <ns3:message>
<id />
<result>0</result>
</ns3:message>
</ns3:MtSOAPRespBody>
</soapenv:Body>
</soapenv:Envelope>请问怎么读取其中的result值????
doc.Load(@"c:\1.xml");
XmlNode node = doc.DocumentElement.GetElementByTagName("result")[0];
string s = node.InnerText;
Console.WriteLine(s);
XmlNamespaceManager nsmgr = new XmlNamespaceManager(xmldoc.NameTable);
nsmgr.AddNamespace("sms", "http://sms.zjol.com.cn/esms/"); XmlNodeList nodeList = xmldoc.SelectNodes("/sms:MtSOAPRespBody/sms:message", nsmgr); foreach (XmlElement node in nodeList)
{
//得到该节点的子节点
XmlElement els = node as XmlElement;
if (els.Name.ToLower() == "result")
{
txtId.Text = els.Attributes["result"].InnerText;
}
else if (els.Name.ToLower() == "result")
{
TxtRe.Text = els.Attributes["result"].InnerText;
}
}
我是这样去读取的,但是nodeList中取不到值? 请问是什么原因?