首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

获取xml节点内容解决方案

2013-01-18 
获取xml节点内容比如A.XML,内容如下?xml version1.0 encodingutf-8?datecategory nameE1p

获取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/>");
}

热点排行