62,046
社区成员
发帖
与我相关
我的任务
分享
XmlDocument doc = new XmlDocument();
doc.Load("d:\\test.txt"); //手工测试
XmlCDataSection CdataSection = (XmlCDataSection)(doc.SelectSingleNode("/SOAP-ENV:Envelope/SOAP-ENV:Body/fjs1:invokeSrvResponse/response").FirstChild); //执行此句出错
string sResponseXML = CdataSection.Value;
XmlDocument doc = new XmlDocument();
//doc.LoadXml(sResponseXML);
doc.Load("d:\\test.txt"); //手工测试
XmlNamespaceManager nsmgr = new XmlNamespaceManager(new XmlDocument().NameTable);
nsmgr.AddNamespace("SOAP-ENV", "http://schemas.xmlsoap.org/soap/envelope/");
nsmgr.AddNamespace("fjs1", "http://www.digiwin.com.cn/tiptop/TIPTOPServiceGateWay");
XmlCDataSection CdataSection = (XmlCDataSection)(doc.SelectSingleNode("/SOAP-ENV:Envelope/SOAP-ENV:Body/fjs1:invokeSrvResponse/response", nsmgr).FirstChild);
sResponseXML = CdataSection.Value;
doc.LoadXml(sResponseXML);
XmlCDataSection CdataSection2 = (XmlCDataSection)doc.SelectSingleNode("/response/payload/param").FirstChild;
sResponseXML = CdataSection2.Value;
doc.LoadXml(sResponseXML);
XmlNode mNode = doc.SelectSingleNode("/Response/ResponseContent/Document/RecordSet/Master/Record");
XmlNodeList mainTab = mNode.ChildNodes; //主表节点集合
C# 代码如上,我的目的应该很清楚,就是要获取最里层CDATA中的内容,然后再处理里面的数据。