linq to xml XElement类

  XElement类表示XML文件中的一个元素(XML文件的基本组成部分)。一般情况下,每一个元素都必须包含其名称。它还可以包含以下4个组成内容:

q      元素(由XElement类表示),作为元素的子元素。

q      文本(由XText类表示)。

q      注释(由XComment类表示),将注释作为元素的一个子元素。

q      XML处理指令(由XProcessingInstruction类表示),用来指定处理该XML文件的处理器。

  XElement类提供了多个属性获取或操作XML文件中的元素,如获取元素名称的Name属性、获取元素的值的Value属性等。XElement类的属性如表所示。

表  XElement类的属性

属    性

说    明

Name

元素的名称。

Value

元素的值。

FirstAttribute

元素的第一个属性。

LastAttribute

元素的最后一个属性。

HasAttributes

表示元素是否包含属性。

HasElements

表示元素是否包含元素。

IsEmpty

表示是否为一个空元素。

EmptySequence

空的元素集合。

  另外,XElement类还提供了多个方法操作XML文件中的元素,如设置元素的值的SetValue()方法、移除元素的所有节点和属性的RemoveAll()方法等。XElement类的方法如表所示。

表  XElement类的方法

方    法

说    明

AncestorsAndSelf()

自身及其上级元素的集合。

DescendantsAndSelf()

自身及其子元素元素的集合。

DescendantNodesAndSelf()

自身及其子节点的集合。

Load()

导入XML文件或片段,并创建为XElement类实例。

Parse()

解释XML文件或片段,。

Save()

将XElement实例保存为XML文件。

Attribute()

获取指定的属性。

Attributes()

获取该元素的所有属性。

GetDefaultNamespace()

元素的默认命名空间。

GetNamespaceOfPrefix()

与元素相关的命名空间的。

GetPrefixOfNamespace()

获取与元素的命名控件的前缀。

ReplaceAll()

替换该元素自动的属性。

RemoveAll()

移除该元素的所有内容。

ReplaceAttributes()

替换该元素的所有属性。

RemoveAttributes()

移除元素的属性。

SetValue()

设置该元素的值。

SetAttributeValue()

设置该元素的属性的值。

SetElementValue()

设置该元素的子元素的值。

  下面的实例代码创建了名称为Advertisements的元素,并添加了两个子元素Ad。同时,Ad元素也包含Name和Url元素及其值。具体步骤如下。

(1)创建Advertisements元素及其子元素和值。

(2)使用网页显示Advertisements元素的内容。

(3)设置网页的输出格式为“text/xml”,并中止网页的输出操作。

private void XElementClass()
         {        ///创建一个XML元素
                   XElement element = new XElement("Advertisements",
                            new XElement("Ad",
                                     new XElement("Name","w3c"),   ///添加元素Name
                                     new XElement("Url","http://www.w3c.com")   ///添加元素Url
                            ),
                            new XElement("Ad",
                                     new XElement("Name","Microsoft"),  ///添加元素Name
                                     new XElement("Url","http://www.microsoft.com")    ///添加元素Url
                            )
                   );
                   ///显示XML文件的内容
                   Response.Write(element);
                   ///设置网页显示的形式为XML文件
                   Response.ContentType = "text/xml";
                   Response.End();
         }

Sample_11项目中的LinqtoXmlBaseClass.aspx页面测试了上述实例代码(XElementClass()函数),测试结果如图所示。

来源:http://blog.csdn.net/linqmail/article/details/2341472

加支付宝好友偷能量挖...


评论(0)网络
阅读(163)喜欢(0)asp.net-linq