问题描述
<?xmlversion='1.0'encoding='UTF-8'?><Responseservice="OrderService"><Head>OK</Head><Body><OrderResponsefilter_result="2"destcode="476"mailno="444029291047,003970485890,003970485881,003970485872"origincode="020"orderid="D00109931"/></Body></Response>
我想获取444029291047,003970485890,003970485881,003970485872这个字符串,怎么获取呢?asp.net
解决方案
解决方案二:
stringxml=@"<?xmlversion='1.0'encoding='UTF-8'?><Responseservice=""OrderService""><Head>OK</Head><Body><OrderResponsefilter_result=""2""destcode=""476""mailno=""444029291047,003970485890,003970485881,003970485872""origincode=""020""orderid=""D00109931""/></Body></Response>";XElementroot=XElement.Parse(xml);Console.WriteLine(root.Element("Body").Element("OrderResponse").Attribute("mailno").Value);
解决方案三:
linq去查方便
解决方案四:
privatestaticvoidtest(){stringxml=@"<?xmlversion='1.0'encoding='UTF-8'?><Responseservice=""OrderService""><Head>OK</Head><Body><OrderResponsefilter_result=""2""destcode=""476""mailno=""444029291047,003970485890,003970485881,003970485872""origincode=""020""orderid=""D00109931""/></Body></Response>";XmlDocumentdoc=newXmlDocument();doc.LoadXml(xml);stringmailno=doc.SelectSingleNode("//OrderResponse/@mailno").InnerText;Console.WriteLine(mailno);}
解决方案五:
参考:
解决方案六:
XmlDocumentxd=newXmlDocument();xd.LoadXml(“XML内容”);XmlNodexdHead=xd.GetElementsByTagName("Head").Item(0);if(xdHead.InnerText=="OK"){XmlNodeListxdList=xd.GetElementsByTagName("OrderResponse");foreach(XmlNodexdnodeinxdList){strMailno=xdnode.Attributes["mailno"].Value;strOrigincode=xdnode.Attributes["origincode"].Value;}}