随笔 - 705  文章 - 0  评论 - 1103  阅读 - 138万 

使用 XDocument 对象的 Element 方法,获取制定层次结构中指定一个元素的值

public void MyDocElement()
        {
            
            XDocument xdoc = XDocument.Load(Server.MapPath("hamlet.xml"));
            //查找地址的元素
            Response.Write(xdoc.Element("PLAY").Element("TITLE").Value + "<br />");
            //如果包含多个同名元素,则只返回第一个元素
            Response.Write(xdoc.Element("PLAY").Element("PERSONAE").Element("PERSONA").Value + "<br />");

        }

 

用SetValue方法去修改指定元素的值

public void MyDocElementSetValue()
        {
            XDocument xdoc = XDocument.Load(Server.MapPath("hamlet.xml"));
            //修改指定位置元素的值
            xdoc.Element("PLAY").Element("PERSONAE").Element("PERSONA").SetValue("冯瑞涛");
            //如果包含多个同名元素,则只返回第一个元素
            Response.Write(xdoc.Element("PLAY").Element("PERSONAE").Element("PERSONA").Value + "<br />");
        }

 

使用Add方法添加制定元素到指定位置

public void MyDocElementAdd()
       {
           XDocument xdoc = XDocument.Load(Server.MapPath("hamlet.xml"));
           //定义一个演员
           XElement xe = new XElement("PERSONA", "冯瑞涛");
           //将演员添加到指定元素的最后面
           xdoc.Element("PLAY").Element("PERSONAE").Add(xe);

           //重新查询结果
           var query = from people in xdoc.Descendants("PERSONA")
                       select people.Value;
           //people 是符合条件元素结果集 而people.Value;就是这个结果集的所有元素的值的序列
           Response.Write(query.Count() + " 个演员被找到。");

           Response.Write("<p />他们是: <p />");

           foreach (var item in query)
           {
               //输出他们的值
               Response.Write(item + "<br />");

           }

       }

 

使用Remove方法删除制定元素

public void MyDocElementRemove()
        {
            XDocument xdoc = XDocument.Load(Server.MapPath("hamlet.xml"));
            //删除
            xdoc.Element("PLAY").Element("PERSONAE").Element("PERSONA").Remove();

            //重新查询结果编程了25个演员
            var query = from people in xdoc.Descendants("PERSONA")
                        select people.Value;
            //people 是符合条件元素结果集 而people.Value;就是这个结果集的所有元素的值的序列
            Response.Write(query.Count() + " 个演员被找到。");

            Response.Write("<p />他们是: <p />");

            foreach (var item in query)
            {
                //输出他们的值
                Response.Write(item + "<br />");

            }
        }
posted on   冯瑞涛  阅读(928)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示