ASP.NET 利用Linq和XPath操作XML

XML格式

<?xml version="1.0" encoding="UTF-8"?>
<Projects ID="">
  <ProjectGroup>
    <ProjectItem ID="">
      <InfoList>
        <InfoItem Code="GCXX" Name="工程信息" Remark="" Value="">
          <InfoItem Code="YSBH" Name="项目编号(必填)" Remark="" Value="20120330001"/>
          <InfoItem Code="YSMC" Name="工程名称(必填)" Remark="" Value="工程0059"/>
          <InfoItem Code="BuildUnit" Name="建设单位(业主)(必填)" Remark="" Value=" "/>
          <InfoItem Code="JSDWFDR" Name="建设单位法人代表" Remark="" Value=""/>
          <InfoItem Code="GCLX" Name="工程类型(必填)" Remark="" Value=" "/>
          <InfoItem Code="BAGCDQ" Name="工程地区" Remark="" Value=""/>
          <InfoItem Code="GCDD" Name="工程地点" Remark="" Value=""/>
          <InfoItem Code="ZJLY" Name="资金来源" Remark="" Value=""/>
          <InfoItem Code="ConstructVersion" Name="标书版本号(必填)" Remark="" Value="广东省建设工程造价文件数据交换标准化规定2.0"/>
          <InfoItem Code="WJCJSJ" Name="文件创建时间" Remark="" Value=""/>
          <InfoItem Code="WJXGSJ" Name="文件修改时间" Remark="" Value=""/>
          <InfoItem Code="YSLB" Name="文件类型" Remark="" Value="结算"/>
        </InfoItem>
      </InfoList>
    </ProjectItem>
  </ProjectGroup>
</Projects>

添加引用

using System.Xml.Linq;
using System.Xml.XPath;

 

加入代码:

            string xml_path = Server.MapPath("~/xml/BaseInfo.XML");
            XDocument loaded = XDocument.Load(xml_path); //Linq
            IEnumerable<XElement> list_GCXX = loaded.XPathSelectElements("//ProjectGroup/ProjectItem/InfoList/InfoItem[@Code='GCXX']");//工程信息
            foreach (XElement item in list_GCXX.Elements())
            {
                Label1.Text += "Code=" + item.Attribute("Code").Value.ToString() + " ";
                Label1.Text += "Name="+ item.Attribute("Name").Value.ToString() + " ";
                Label1.Text += "Value=" + item.Attribute("Value").Value.ToString() + " <br>";
                //Response.Write(item.Value + "<br>");
            }

            IEnumerable<XElement> list_CGWJPZ = loaded.XPathSelectElements("//ProjectGroup/ProjectItem/InfoList/InfoItem[@Code='CGWJPZ']");//成果文件配置
            foreach (XElement item in list_CGWJPZ.Elements())
            {
                Label1.Text += "Code=" + item.Attribute("Code").Value.ToString() + " ";
                Label1.Text += "Name=" + item.Attribute("Name").Value.ToString() + " ";
                Label1.Text += "Value=" + item.Attribute("Value").Value.ToString() + " <br>";
                //Response.Write(item.Value + "<br>");
            }
  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值