LINQ To XML类详细分析

开发 后端
这里介绍LINQ To XML类,包括XDocument类:表示一个 XML 文档、XElement类:表示一个 XML 元素和XAttribute类:属性是与元素关联的名称/值对。

本文向大家介绍LINQ To XML类,可能好多人还不了解LINQ To XML类,没有关系,看完本文你肯定有不少收获,希望本文能教会你更多东西。

LINQ To XML类

下面重点学习三个类:XDocument,XElement,Xattribute

1.LINQ To XML类——XDocument类:表示一个 XML 文档。XDocument可以包含以下元素:
◆一个 XDeclaration 对象。XDeclaration 使您能够指定 XML 声明的相关部分: XML 版本、文档的编码,以及 XML 文档是否是独立的。
◆一个 XElement 对象。 这是 XML 文档的根节点。
◆任意数目的 XProcessingInstruction 对象。 处理指令将信息传递给处理 XML 的应用程序。
◆任意数目的 XComment 对象。 注释将与根元素同级。 XComment 对象不能是列表中的第一个参数,因为 XML 文档以注释开头无效。
◆一个用于 DTD 的 XDocumentType。

用XDocument创建XML文件

  1. XDocument d = new XDocument( new XDeclaration("1.0", "utf-8", "true"),  
  2. new XComment("This is a comment."),  
  3. new XProcessingInstruction("xml-stylesheet", 
    "
    href='mystyle.css' title='Compact' type='text/css'"),  
  4. new XElement("Pubs",  
  5. new XElement("Book",  
  6. new XElement("Title", "Artifacts of Roman Civilization"),  
  7. new XElement("Author", "Moreno, Jordao")  
  8. )   
  9. )   
  10. );  
  11. Console.WriteLine(d.Declaration );  
  12. Console.WriteLine(d);  
  13. //XML文件  
  14. <?xml version="1.0" encoding="utf-8" standalone="true"?> 
  15. <!--This is a comment.--> 
  16. <?xml-stylesheet href='mystyle.css' title='Compact' type='text/css'?> 
  17. <Pubs> 
  18. <Book> 
  19. <Title>Artifacts of Roman Civilization</Title> 
  20. <Author>Moreno, Jordao</Author> 
  21. </Book> 
  22. </Pubs> 

2.LINQ To XML类——XElement类:表示一个 XML 元素。XDocument 可以包含以下元素:
◆Xelement
◆Xcomment
◆XprocessingInstruction
◆XText

用XElement创建XML文件

  1. XElement xml1 = new XElement("Root",  
  2. new XElement("Node1", 1),  
  3. new XElement("Node2", 2),  
  4. new XElement("Node3", 3),  
  5. new XElement("Node4", 4),  
  6. new XElement("Node5", 5),  
  7. new XElement("Node6", 6)  
  8. );  
  9. XElement xml2 = new XElement("Root",  
  10. from el in xml1.Elements()  
  11. where ((int)el &gt;= 3 && (int)el <= 5)  
  12. select el  
  13. );  
  14. Console.WriteLine(xml2);  
  15. //XML文件  
  16. &lt;Root> 
  17. <Node3>3</Node3> 
  18. <Node4>4</Node4> 
  19. <Node5>5</Node5> 
  20. </Root> 

3.LINQ To XML类——XAttribute类:属性是与元素关联的名称/值对。 XAttribute 类表示 XML 属性。

属性与元素之间有些区别。XAttribute 对象不是 XML 树中的节点。 它们是与 XML 元素关联的名称/值对。 与文档对象模型 (DOM) 相比,这更加贴切地反映了 XML 结构。 虽然 XAttribute 对象实际上不是 XML 树的节点,但使用 XAttribute 对象与使用 XElement 对象非常相似。

  1. XElement phone = new XElement("Phone",  
  2. new XAttribute("Type", "Home"),  
  3. "555-555-5555");  
  4. Console.WriteLine(phone); 

【编辑推荐】

  1. LINQ查询操作剖析
  2. LINQ生成字符串概述
  3. LINQ查询语法简单描述
  4. LINQ解决方案简单概述
  5. LINQ查询结果分析
责任编辑:佚名 来源: IT168
相关推荐

2009-09-14 13:50:35

LINQ编程模型

2009-09-08 15:56:50

Linq使用Group

2009-09-09 09:48:43

Linq延迟加载

2009-09-09 13:53:21

Linq表值函数

2009-11-20 13:11:44

Oracle XML数

2013-12-04 10:21:38

AndroidAndroidMani

2009-09-28 10:39:01

Hibernate基础

2009-09-25 14:23:39

2010-01-06 13:50:37

.NET Framew

2009-06-18 14:00:51

2009-10-10 13:52:57

VB Update方法

2009-09-07 14:18:01

C#内存管理

2009-12-03 17:41:40

PHP应用发展

2009-03-24 09:17:58

驱动GSMAndroid

2021-10-25 19:52:52

IntentFilte

2009-10-28 10:06:29

VB.NET With

2009-12-07 15:37:00

WCF控件

2009-12-16 14:09:14

Visual Stud

2009-09-07 13:19:44

C#线程同步

2009-09-04 15:43:07

C#流模型
点赞
收藏

51CTO技术栈公众号