XDocument是.net 3.5为Linq for XML准备的轻量级Document对象,在功能上他和XmlDocument差不多,但是配合Linq使用更方便而已.
Linq是.NET Framework 3.5引入的一个编程概念,在语言级别如C#中会表现为一种新的语法,如 from c in "internationalization".ToCharArray() where c == 'i' select c.ToUpper() 看起来和SQL很像,所以他有个相似的名字叫Linq 主要的作用是使用类SQL语法来处理应用程序中的数据 而在Linq for XML中,你也可以使用这种语法来处理XML文档,如找出所有标签名为a的元素的href属性 from e in document.Elements where e.TagName == "a" select e.Attributes["href"]最近用到网上一些源代码的时候,发现好多数据都是用XmlDocument来传递,由于习惯了XDocument,所以需要简单转换一下,于是就写了西面这个类,很简单,就不需要说明了
public static class XmlDocumentExtensions
{
public static XDocument ToXDocument(this XmlDocument document)
{
return document.ToXDocument(LoadOptions.None);
}
public static XDocument ToXDocument(this XmlDocument document, LoadOptions options)
{
using (XmlNodeReader reader = new XmlNodeReader(document))
{
return XDocument.Load(reader, options);
}
}
}