查询XML结点
Linq是从集合中查询对象,在linq to xml中的集合是通过XElement类的Elements(),Elements(string name),以及Descendants、DescendantsAndSelf、Ancestors、AncestorsAndSelf的几个重载方法中获得。获得XElement集合之后,可以通过XElement的Attribute(string name)方法获得元素的属性值,可以通过XElement的Value属性获得节点的文本值;
static void Main(string[] args)
{
string xmlString = @"<persons>
<person>
<name>John</name>
<age>28</age>
</person>
</persons>";
XElement xe = XElement.Parse(xmlString,LoadOptions.SetLineInfo);
//读取元素 读取Name的后面的第一个兄弟元素
XElement xe1 = xe.Element("person").Element("name").ElementsAfterSelf().First();
Console.WriteLine(xe1.Value); //输出 28
//读取父节点
XElement xe2 = xe1.Parent;
Console.WriteLine(xe2.Name);
}