LINQ to XML 类"/>
C#中的19个LINQ to XML 类
System.Xml.Linq 命名空间包含 LINQ to XML 的19个类。 LINQ to XML 是内存中的 XML 编程接口,使能轻松有效地修改 XML 文档。
微软在 LINQ 上投入了很大的精力,使我们在编程时感觉到很舒服。处理 XML 时使用最多的三个类:XElement、XAttribute 和 XDocument。
序号 | 类 | 说明 |
1 | Extensions | 包含 LINQ to XML 扩展方法。 |
2 | XAttribute | 表示 XML 特性。 |
3 | XCData | 表示包含 CDATA 的文本节点。 |
4 | XComment | 表示 XML 注释。 |
5 | XContainer | 表示可包含其他节点的节点。 |
6 | XDeclaration | 表示 XML 声明。 |
7 | XDocument | 表示 XML 文档。 有关 XDocument 对象的组件和用法,请参阅 XDocument Class Overview。 |
8 | XDocumentType | 表示 XML 文档类型定义 (DTD)。 |
9 | XElement | 表示一个 XML 元素。 有关用法信息和示例,请参阅本页的 XElement 类概述和“备注”部分。 |
10 | XName | 表示 XML 元素或属性的名称。 |
11 | XNamespace | 表示一个 XML 命名空间。 此类不能被继承。 |
12 | XNode | 表示 XML 树中节点的抽象概念(元素、注释、文档类型、处理指令或文本节点)。 |
13 | XNodeDocumentOrderComparer | 包含用于比较节点文档顺序的功能。 此类不能被继承。 |
14 | XNodeEqualityComparer | 比较节点以确定其是否相等。 此类不能被继承。 |
15 | XObject | 表示 XML 树中的节点或属性。 |
16 | XObjectChangeEventArgs | 提供有关 Changing 和 Changed 事件的数据。 |
17 | XProcessingInstruction | 表示 XML 处理指令。 |
18 | XStreamingElement | 表示 XML 树中支持流输出延迟的的元素。 |
19 | XText | 表示文本节点。 |
表格中列元素详解见超链接。
一、XElement 类
XElement 类是 LINQ to XML 中的基础类之一。 它表示一个 XML 元素。 可以使用该类创建元素;更改元素内容;添加、更改或删除子元素;向元素中添加属性;或以文本格式序列化元素内容。 还可以与System.Xml 中的其他类(例如 XmlReader、XmlWriter 和XslCompiledTransform)进行互操作。 使用 LINQ to XML 创建 xml 文档有很多种方式,具体使用哪种方法要根据实际需要。而创建 xml 文档最简单、最常见的方式是使用 XElement 类。1.使用 XElement 类创建一个 xml 文档
//通过XDocument创建XML
//通过XElement创建XMLusing System.Xml.Linq;namespace _10_1
{class Program{static void Main(string[] args){ CreateDocument();CreateCategories();#region 通过XDocument创建XMLvoid CreateDocument(){string path = Directory.GetCurrentDirectory() + @"\xmldoc.xml";XDocument _xmldoc = new(new XDeclaration("1.0", "utf-8", "yes"),new XElement("Root", "root"));_xmldoc.Save(path);}#endregion 通过XDocument创建XML#region 通过XElement创建XMLvoid CreateCategories(){string path = Directory.GetCurrentDirectory() + @"\People.xml";XElement root = new("Peoples",new XElement("People",new XElement("ID", Guid.NewGuid()),new XElement("Name", "王菲")),new XElement("People",new XElement("ID", Guid.NewGuid()),new XElement("CategoryName", "谢霆锋")),new XElement("People",new XElement("ID", Guid.NewGuid()),new XElement("Name", "章子怡")),new XElement("People",new XElement("ID", Guid.NewGuid()),new XElement("Name", "汪峰")));root.Save(path);}#endregion 通过XElement创建XML}}
}
2.输出文件
(1)使用 XElement 类创建一个 xml 文档
<Peoples>
<People>
<ID>9586dab0-28a4-465a-987d-5f1e89042154</ID>
<Name>王菲</Name>
</People>
<People>
<ID>7bf22551-7635-4768-bb12-d826ba0991d3</ID>
<CategoryName>谢霆锋</CategoryName>
</People>
<People>
<ID>bcf1f65d-38f5-40f1-8ad7-eae9d7ee117e</ID>
<Name>章子怡</Name>
</People>
<People>
<ID>dc69f99b-b8cf-46c3-bba6-a23909a199cd</ID>
<Name>汪峰</Name>
</People>
</Peoples>
(2)使用 XDocument类创建一个 xml 文档
<Root>root</Root>
二、XAttribute 类
XAttribute 类用来处理元素的属性,属性是与元素相关联的“名称-值”对,每个元素中不能有名称重复的属性。使用 XAttribute 类与使用 XElement 类的操作十分相似。
三、XDocument 类
XDocument 类提供了处理 xml 文档的方法,包括声明、注释和处理指令。一个 XDocument 对象可以包含以下内容:对象 | 个数 | 说明 |
XDeclaration | 一个 | 用于指定 xml 声明中的重要组成部分,如文档编码和版本等 |
XElement | 一个 | 指定文档的根元素 |
XDocumentType | 一个 | 表示一个 xml DTD |
XComment | 多个 | Xml 注释。它不能是第一个参数,因为一个有效的 xml 文档不能以注释作为开始 |
XProcessingInstruction | 多个 | 为处理 xml 的应用程序指定任何所需信息 |
更多推荐
C#中的19个LINQ to XML 类
发布评论