读书人

获取xml节点内容解决方案

发布时间: 2013-01-18 10:22:42 作者: rapoo

获取xml节点内容
比如A.XML,内容如下


<?xml version='1.0' encoding='utf-8'?>
<date>
<category name='E1'>
<property name='serviceType' value='服务1'/>
<property name='calcMethod' value='垫付额度'/>
<property name='amount' value='100'/>
</category>
<category name='E1'>
<property name='serviceType' value='服务2'/>
<property name='calcMethod' value='次数'/>
<property name='amount' value='200'/>
</category>
</date>

如何循环取出E1中的值?(E1的名字如果一样不好做的话,改成E1、E2也行) xml
[解决办法]
用XPath,没有测试,不对的话自己更改一下。

XElement root = XElement.Load("a.xml");

var items = root.XPathSelectElements("category/@name='E1'");

foreach(var item in items)
{
// do something
}

[解决办法]
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("~/test.xml"));
XmlNodeList nodes = xmlDoc.SelectNodes("/date/category[@name='E1']");
foreach (XmlNode node in nodes)
{
foreach (XmlNode attr in node.SelectNodes("property/@value"))
Response.Write(attr.Value + "<br/>");
Response.Write("<br/>");
}

读书人网 >asp.net

热点推荐