Linq to XML增删改查


   linq to xml对xml操作很是方面。首先要引用using System.Xml.Linq。

    XML文件:

<?xml version="1.0" encoding="utf-8" ?>
<serverVersion>
  <!--最新版本-->
  <newVersion>3.0</newVersion>
  <updateReason>测试</updateReason>
  <serverPath>http://localhost:51523/</serverPath>
  <!--版本信息-->
  <versionInof AssemblyVersion="3.0" >

    <!--文件列表-->
    <filesInfo>
      <file fileName="a.txt">
        <fileMD5>c81e728d9d4c2f636f067f89cc14862c</fileMD5>
        <filePath></filePath>
        <fileDownPath>versionFiles/a.txt</fileDownPath>
      </file>
      <file fileName="b.BMP">
        <fileMD5>d41d8cd98f00b204e9800998ecf8427e</fileMD5>
        <filePath></filePath>
        <fileDownPath>versionFiles/b.BMP</fileDownPath>
      </file>
      <file fileName="c.wps">
        <fileMD5>2d9114be8523680487371d667b6fb0f1</fileMD5>
        <filePath></filePath>
        <fileDownPath>versionFiles/c.wps</fileDownPath>
      </file>
      
      <file fileName="d.doc">
        <fileMD5>8434f8ef821ae4f721ad6b6191191888</fileMD5>
        <filePath></filePath>
        <fileDownPath>versionFiles/d.doc</fileDownPath>
      </file>
    <file fileName="e.doc">
        <fileMD5>8434f8ef821ae4f721ad6b6191191820</fileMD5>
        <filePath></filePath>
        <fileDownPath>versionFiles/e.doc</fileDownPath>
      </file>
    <file fileName="f.txt">
      <fileMD5>53577514ad9fa951e39e582e442812d9</fileMD5>
      <filePath></filePath>
      <fileDownPath>versionFiles/f.txt</fileDownPath>
    </file>
      <file fileName="g.txt">
        <fileMD5>df38887bc670cd288fde231beb2a3f83</fileMD5>
        <filePath></filePath>
        <fileDownPath>versionFiles/files/g.txt</fileDownPath>
      </file>
      <file fileName="h.txt">
        <fileMD5>0d0fdb47733d1046190a843fcc2cf440</fileMD5>
        <filePath></filePath>
        <fileDownPath>versionFiles/h.txt</fileDownPath>
      </file>
    </filesInfo>
    
  </versionInof>
  
</serverVersion>

   一、查

   

XElement  root=XElement.Load("../../ClientVersion.xml");

            IEnumerable<XElement> files = from el in root.Elements("versionInof").Elements("filesInfo").Elements("file")
                                          where (string)el.Attribute("fileName") == fileUpdateInfo.fileName
                                          select el;
 
XElement.Load("../../ClientVersion.xml")//创建的是xml文件的根节点,包含了整个XML。相当于是<span style="font-family: Arial, Helvetica, sans-serif;">serverVersion节点的内容</span>
<pre name="code" class="csharp" style="font-size: 14px;">root.Elements("versionInof")//是查root节点下<span style="font-family: Arial, Helvetica, sans-serif;">的所有节点 名为</span><span style="font-family: Arial, Helvetica, sans-serif;">versionInof,注意这里是仅仅是root节点下的子节点,如果是子节点下的子节点是不能被查询到的</span>
<span style="font-family: Arial, Helvetica, sans-serif;"></span><pre name="code" class="csharp" style="font-size: 14px;">root.Element("节点名");//返回的是"节点名"的第一个节点
节点.Attribute("属性名");//查的是该节点的属性名为“属性名”的值,如<span style="font-family: Arial, Helvetica, sans-serif;"><versionInof AssemblyVersion="3.0" >中的3.0</span>
节点.value;//是该节点的文本,如<span style="font-family: Arial, Helvetica, sans-serif;"><fileMD5>df38887bc670cd288fde231beb2a3f83</fileMD5>中的</span><span style="font-family: Arial, Helvetica, sans-serif;">df38887bc670cd288fde231beb2a3f83</span>

 
 

    

   

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看rEADME.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看rEADME.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值