精通LINQ--11.2.3 XDocument和XDeclaration类

本文介绍如何使用XDocument类创建包含特定元素和属性的XML文件,并将其保存为file.xml。文章通过实例演示了XML文件的创建过程,包括XML声明、根元素及子元素的定义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  XDocument类表示一个XML文档,XDeclaration类表示XML文件中XML声明。其中,XML声明用来声明XML文件的版本、编码,以及XML文件的是否独立。一般情况下,在创建一个XML文件时,需要添加XML声明。

XDocument类提供了多个属性获取XML文件的属性,如获取XML文件的XML声明的Declaration属性、获取XML文件的根元素的Root属性等。XAttribute类的属性如表所示。

  XDocument类的属性

   

   

Declaration

文件的XML声明。

Root

文件的根元素。

DocumentType

文件的文档类型。

NodeType

文件的节点类型。

另外,XDocument类还提供了多个方法操作XML文件,如导入XML文件内容的Load()方法、解释XML文件的Parse()方法等。XAttribute类的方法如表所示。

  XDocument类的方法

   

   

Load

导入指定地址的XML文件的内容,,并创建为XDocument类实例。

Save

XDocument类的实例保存为指定地址的XML文件。

Parse

读取指定的XML文件,并解释该XML文件中的内容。

XDeclaration类提供了3个属性描述XML声明,具体说明如表所示。

XDeclaration类的属性

   

   

Version

XML文件的版本。

Encoding

XML文件的编码。

Standalone

指定XML文件是否独立。

下面的实例代码使用XDocument类创建一个XML文件,并保存为“file.xml”文件。其中,该XML文件的根元素为Advertisements元素。根元素又包含两个子元素AdAd元素设置了ID属性、NameUrl元素及其值。具体步骤如下。

1)创建XDocument类的实例doc,即创建一个XML文件。

2)使用XDeclaration类创建该XML文件的声明。

3)使用XElement类创建该XML文件包含的元素Advertisements,以及该元素的子元素及其属性等内容。

4)调用Save()方法将doc实例保存为XML文件“file.xml”。

5)使用网页显示“file.xml”文件的内容。

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

         private void XDocumentClass()

         {        ///设置新的XML文件保存的地址

                   string xmlFilePath = Server.MapPath("Data/file.xml");

                   ///创建一个新的XML文档

                   XDocument doc = new XDocument(

                            new XDeclaration("1.0","utf-8","yes"),

                            new XElement("Advertisements",

                                     new XElement("Ad",

                                               new XAttribute("ID","1"),                        ///添加属性ID

                                               new XElement("Name","w3c"),                  ///添加元素Name

                                               new XElement("Url","http://www.w3c.com")       ///添加元素Url

                                     ),

                                     new XElement("Ad",

                                               new XAttribute("ID","2"),                        ///添加属性ID

                                               new XElement("Name","Microsoft"),              ///添加元素Name

                                               new XElement("Url","http://www.microsoft.com")   ///添加元素Url

                                     )

                            )

                   );

                   ///保存为XML文件

                   doc.Save(xmlFilePath);

                   ///显示XML文件的内容

                   Response.Write(doc);

                   ///设置网页显示的形式为XML文件

                   Response.ContentType = "text/xml";

                   Response.End();

         }

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值