XElement类表示XML的元素,它是XContainer类的派生类,而XContainer类又派生于XNode类.一个元素是一个节点,因此很多时候会看到它们会交替着使用.XElement是LINQ to XML最重要且最基本的类型之一,因为它包含所有创建和操作XML元素所需要的功能,通过它可以创建元素,添加和修改元素的属性,甚至操作元素的内容.下面就用几个简单的示例来认识一下这个类吧.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
//创建一个测试树
XElement tree = new XElement("Root",
new XElement("Child1", 1),
new XElement("Child3", 3));
PrintTree("创建一个测试树", tree);
//在Child1元素后面添加一个新的元素Child2
tree.Element("Child1").AddAfterSelf(new XElement("Child2", 2));
PrintTree("在Child1元素后面添加一个新的元素Child2", tree);
//设置Child1的值为3
tree.SetElementValue("Child1", 3);
PrintTree("设置Child1的值为3", tree);
//移除Child1
tree.Element("Child1").Remove();
PrintTree("移除Child1", tree);
//保存至文本中
tree.Save("test.xml");
}
private static void PrintTree(string info, XElement tree)
{
Console.WriteLine(info);
Console.WriteLine(tree);
Console.WriteLine("----------------------------------");
}
}
}