LINQ to XML概述

LINQ to XML提供使用LINQ在内存中操作XML数据的编程接口,提供比DOM更简洁的开发接口。LINQ还可以对内存中的XML数据进行查询或者更改。和文档对象模型(DOM)一样。LINQ

to XML也是将XML至于内存之中,可以查询修改还可以将其另存为文件,也可以序列化后通过网络发送。

DOM模型中通过XMLDocument 来创建XML树,LINQ to XML 中通过XElemnt来创建XML树,看一下比较

static void CreateXMLDocByDom() {
            XmlDocument doc = new XmlDocument();//创建XML文档
            XmlElement bookList = doc.CreateElement("BookList");//创建booklist根节点
            XmlElement book, auth;
            book = doc.CreateElement("BOOK");
            book.SetAttribute("Name", "Book-1");
            auth = doc.CreateElement("Author");
            auth.InnerText = "Author-1";
            book.AppendChild(auth);//将auth添加到book节点里
            bookList.AppendChild(book);
            book = doc.CreateElement("BOOK");
            book.SetAttribute("Name", "Book-2");
            auth = doc.CreateElement("Author");
            auth.InnerText = "Author-2";
            book.AppendChild(auth);
            bookList.AppendChild(book);
            doc.AppendChild(bookList);
            doc.Save("F:\\XML\\f1.XML");
        }

LINQ to XML

static void CreateXMLDocByLinq(){

        XElement booklist = new XElement("Booklist",
            new XElement []
            {
             new XElement("BOOK",
                 new object[]{
             new XAttribute("Name","BOOK-1"),
             new XElement("Author","Author-1")}),
             new XElement("BOOK",
                 new object[]{
             new XAttribute("Name","BOOK-2"),
             new XElement("Author","Author-2")})
        });
        booklist.Save("F:\\XML\\f2.XML");
        }

接下来开始学习Linq to XML

原文地址:https://www.cnblogs.com/wangcongsuibi/p/8890370.html

时间: 2024-10-09 20:17:28

LINQ to XML概述的相关文章

[C#]Linq To Xml 介绍- 转

LINQ to XML 类概述 LINQ to XML 旨在使 XML 名称尽可能简单.     XAttribute 类 XAttribute 表示一个 XML 属性. XCData 类 XCData 表示一个 CDATA 文本节点. XComment 类 XComment 表示一个 XML 注释. XDeclaration 类 XDeclaration 表示一个 XML 声明. XML 声明用于声明 XML 版本和文档的编码. 此外,XML 声明还指定 XML 文档是否为独立文档. XNam

LINQ to XML基本操作

Linq to XML同样是对原C#访问XML文件的方法的封装,简化了用xpath进行xml的查询以及增加,修改,删除xml元素的操作. LINQ to XML 三个最重要类:XElement.XAttribute 和 XDocument. 首先我们先介绍这三个类的基本属性和方法,然后再实现Linq to XML的 增删改查. 1.XDocument 构造函数 名称 说明 XElement(XElement) 从其他 XElement 对象初始化 XElement 类的新实例. XElement

linq to xml 增删查改

一.XML基本概述 XML文件是一种常用的文件格式,例如WinForm里面的app.config以及Web程序中的web.config文件,还有许多重要的场所都有它的身影.Xml是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具.XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用.微软也提供了一系列类库来倒帮助我们在应用程序中存储XML文

24.C#LINQ TO XML(十二章12.3)

自己也写了那么多,但还有很多不懂,有点浮躁吧,但饭还是要吃啊,说说LINQ TO XML吧. LINQ TO XML位于System.Xml.Linq程序集,并且大多数类型位于System.Xml.Linq命名空间.该命名空间下几乎所有类型都以X为前缀;普通DOM API中的Element对应LINQ TO XML中的XElement.列举下都有哪些类型. XName:表示元素和特性的名称 XNamespace:表示XML的命名空间,通常是一个URL XObject:是XNode和XAttrib

LINQ to XML 编程基础

1.LINQ to XML类 以下的代码演示了如何使用LINQ to XML来快速创建一个xml: 隐藏行号 复制代码 ?创建 XML public static void CreateDocument() { string path = @"d:\website"; XDocument xdoc = new XDocument(new XDeclaration("1.0", "utf-8", "yes"), new XEle

XML读写利器XElement(Linq to xml)

年初公司绩效改革,在等最后通知,不知我有没理解错,感觉新版绩效最高会比原先最高拿到的奖金整整少一半... 还好同时也有调工资,加了一点.去年好像是年中整体调过一次,不知公司是一年调两次还是从今年开始改成年初调. 晚上去加班,处理一个数据交换,本想XML和实体直接互相转换,但XML结构太复杂,自动转换不理想,改用手工处理. 原先其它项目是用原始的XmlDocument,感觉不好用,写法也很不美观 网上说还有种XMLTextReader,像DataReader一样,向前只读的,从来没用过 以前有用过

Linq之Linq to XML

目录 写在前面 系列文章 linq to xml 总结 写在前面 在很多情况下,都可以见到使用xml的影子.例如,在 Web 上,在配置文件.Microsoft Office Word 文件(将word文档另存为xml文件,这也提供了一种通过操作xml,操作word的一种方式)以及数据库中,都可以看到 XML.而linq to xml提供了一种操作xml更便捷的方式. 系列文章 Linq之Lambda表达式初步认识 Linq之Lambda进阶 Linq之隐式类型.自动属性.初始化器.匿名类 Li

LINQ to XML(1)

LINQ to XML可以两种方式和XML配合使用.第一种方式是作为简化的XML操作API,第二种方式是使用LINQ查询工具.下面我使用的是第二种方式. 主要内容:用LINQ查询语句对XML文件里的数据进行筛选. 此方法优点: 1.我们可以使用单一语句自顶向下创建XML树. 2.我们可以使用包含树的XML文档在内存中创建并操作XML. 3.我们可以不适用Text子节点来创建和操作字符串节点. 4.一个最大的不同(改进)是,在搜索一个XML树时,不需要遍历它.相反只需要查询树并让它返回想要的结果.

LINQ to XML 实战

LINQ to XML 轴定义:创建XML树或将XML文档加载到XML树之后,可以进行查询,从而查找元素并检索它们的值. 两类轴方法:-一些轴就是XELement和XDocument类中返回IEnumerable(T)集合的方法.-另一些轴方法是Extensions类中的扩展方法.实现为扩展方法的轴对集合进行操作,然后返回集合.XContainer是XElement的基类! -常见的轴方法:-XContainer.Elements()返回集合 -XContainer.Descendants()返