要查看英语原文,请勾选“英语”复选框。也可将鼠标指针移到文本上,在弹出窗口中显示英语原文。
翻译
英语
本文档已存档,并且将不进行维护。

XDocument 类

表示 XML 文档。

命名空间:  System.Xml.Linq
程序集:  System.Xml.Linq(在 System.Xml.Linq.dll 中)

public class XDocument : XContainer

XDocument 类型公开以下成员。

  名称说明
公共方法由 XNA Framework 提供支持XDocument()初始化 XDocument 类的新实例。
公共方法由 XNA Framework 提供支持XDocument(Object[])使用指定的内容初始化 XDocument 类的新实例。
公共方法由 XNA Framework 提供支持XDocument(XDocument)从现有的 XDocument 对象初始化 XDocument 类的新实例。
公共方法由 XNA Framework 提供支持XDocument(XDeclaration, Object[])用指定的 XDeclaration 和内容初始化 XDocument 类的新实例。
页首

  名称说明
公共属性由 XNA Framework 提供支持BaseUri获取此 XObject 的基 URI。 (继承自 XObject。)
公共属性由 XNA Framework 提供支持Declaration获取或设置此文档的 XML 声明。
公共属性由 XNA Framework 提供支持Document获取此 XObjectXDocument (继承自 XObject。)
公共属性由 XNA Framework 提供支持DocumentType获取此文档的文档类型定义 (DTD)。
公共属性由 XNA Framework 提供支持FirstNode获取此节点的第一个子节点。 (继承自 XContainer。)
公共属性由 XNA Framework 提供支持LastNode获取此节点的最后一个子节点。 (继承自 XContainer。)
公共属性由 XNA Framework 提供支持NextNode获取此节点的下一个同级节点。 (继承自 XNode。)
公共属性由 XNA Framework 提供支持NodeType获取此节点的节点类型。 (重写 XObject.NodeType。)
公共属性由 XNA Framework 提供支持Parent获取此 XObject 的父级 XElement (继承自 XObject。)
公共属性由 XNA Framework 提供支持PreviousNode获取此节点的上一个同级节点。 (继承自 XNode。)
公共属性由 XNA Framework 提供支持Root获取此文档的 XML 树的根元素。
页首

  名称说明
公共方法由 XNA Framework 提供支持Add(Object)将指定的内容添加为此 XContainer 的子级。 (继承自 XContainer。)
公共方法由 XNA Framework 提供支持Add(Object[])将指定的内容添加为此 XContainer 的子级。 (继承自 XContainer。)
公共方法由 XNA Framework 提供支持AddAfterSelf(Object)紧跟在此节点之后添加指定的内容。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持AddAfterSelf(Object[])紧跟在此节点之后添加指定的内容。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持AddAnnotation将对象添加到此 XObject 的批注列表。 (继承自 XObject。)
公共方法由 XNA Framework 提供支持AddBeforeSelf(Object)紧邻此节点之前添加指定的内容。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持AddBeforeSelf(Object[])紧邻此节点之前添加指定的内容。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持AddFirst(Object)将指定的内容作为此文档或元素的第一个子级添加。 (继承自 XContainer。)
公共方法由 XNA Framework 提供支持AddFirst(Object[])将指定的内容作为此文档或元素的第一个子级添加。 (继承自 XContainer。)
公共方法由 XNA Framework 提供支持Ancestors()返回此节点的上级元素的集合。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持Ancestors(XName)返回此节点的经过筛选的上级元素的集合。 集合中只包括具有匹配 XName 的元素。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持Annotation(Type)从此 XObject 获取指定类型的第一个批注对象。 (继承自 XObject。)
公共方法由 XNA Framework 提供支持Annotation<T>()从此 XObject 获取指定类型的第一个批注对象。 (继承自 XObject。)
公共方法由 XNA Framework 提供支持Annotations(Type)获取此 XObject 的指定类型的批注集合。 (继承自 XObject。)
公共方法由 XNA Framework 提供支持Annotations<T>()获取此 XObject 的指定类型的批注集合。 (继承自 XObject。)
公共方法由 XNA Framework 提供支持CreateReader()创建此节点的 XmlReader (继承自 XNode。)
公共方法CreateReader(ReaderOptions)使用 readerOptions 参数指定的选项创建 XmlReader (继承自 XNode。)
公共方法由 XNA Framework 提供支持CreateWriter创建可用于将节点添加至 XContainerXmlWriter (继承自 XContainer。)
公共方法由 XNA Framework 提供支持DescendantNodes按文档顺序返回此文档或元素的子代节点集合。 (继承自 XContainer。)
公共方法由 XNA Framework 提供支持Descendants()按文档顺序返回此文档或元素的子代元素集合。 (继承自 XContainer。)
公共方法由 XNA Framework 提供支持Descendants(XName)按文档顺序返回此文档或元素的经过筛选的子代元素集合。 集合中只包括具有匹配 XName 的元素。 (继承自 XContainer。)
公共方法由 XNA Framework 提供支持Element获取具有指定 XName 的第一个(按文档顺序)子元素。 (继承自 XContainer。)
公共方法由 XNA Framework 提供支持Elements()按文档顺序返回此元素或文档的子元素集合。 (继承自 XContainer。)
公共方法由 XNA Framework 提供支持Elements(XName)按文档顺序返回此元素或文档的经过筛选的子元素集合。 集合中只包括具有匹配 XName 的元素。 (继承自 XContainer。)
公共方法由 XNA Framework 提供支持ElementsAfterSelf()按文档顺序返回此节点后的同级元素集合。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持ElementsAfterSelf(XName)按文档顺序返回此节点后经过筛选的同级元素的集合。 集合中只包括具有匹配 XName 的元素。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持ElementsBeforeSelf()按文档顺序返回此节点前的同级元素集合。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持ElementsBeforeSelf(XName)按文档顺序返回此节点前经过筛选的同级元素的集合。 集合中只包括具有匹配 XName 的元素。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持Equals(Object)确定指定的 Object 是否等于当前的 Object (继承自 Object。)
受保护的方法由 XNA Framework 提供支持Finalize允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
公共方法由 XNA Framework 提供支持GetHashCode用作特定类型的哈希函数。 (继承自 Object。)
公共方法由 XNA Framework 提供支持GetType获取当前实例的 Type (继承自 Object。)
公共方法由 XNA Framework 提供支持IsAfter确定当前节点是否按文档顺序显示在指定节点之后。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持IsBefore确定当前节点是否按文档顺序显示在指定节点之前。 (继承自 XNode。)
公共方法静态成员Load(Stream)使用指定的流创建一个新的 XDocument 实例。
公共方法静态成员由 XNA Framework 提供支持Load(String)从文件创建新 XDocument
公共方法静态成员由 XNA Framework 提供支持Load(TextReader)TextReader 创建新的 XDocument
公共方法静态成员由 XNA Framework 提供支持Load(XmlReader)XmlReader 创建新 XDocument
公共方法静态成员Load(Stream, LoadOptions)使用指定流创建新的 XDocument 实例,也可以选择保留空白,设置基 URI 和保留行信息。
公共方法静态成员由 XNA Framework 提供支持Load(String, LoadOptions)从文件创建新 XDocument,还可以选择保留空白和行信息以及设置基 URI。
公共方法静态成员由 XNA Framework 提供支持Load(TextReader, LoadOptions)TextReader 创建新 XDocument,还可以选择保留空白和行信息以及设置基 URI。
公共方法静态成员由 XNA Framework 提供支持Load(XmlReader, LoadOptions)XmlReader 加载 XElement,还可以选择设置基 URI 和保留行信息。
受保护的方法由 XNA Framework 提供支持MemberwiseClone创建当前 Object 的浅表副本。 (继承自 Object。)
公共方法由 XNA Framework 提供支持Nodes按文档顺序返回此元素或文档的子节点集合。 (继承自 XContainer。)
公共方法由 XNA Framework 提供支持NodesAfterSelf按文档顺序返回此节点后的同级节点的集合。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持NodesBeforeSelf按文档顺序返回此节点前的同级节点的集合。 (继承自 XNode。)
公共方法静态成员由 XNA Framework 提供支持Parse(String)从字符串创建新 XDocument
公共方法静态成员由 XNA Framework 提供支持Parse(String, LoadOptions)从字符串创建新 XDocument,还可以选择保留空白和行信息以及设置基 URI。
公共方法由 XNA Framework 提供支持Remove从节点父级中删除此节点。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持RemoveAnnotations(Type)从此 XObject 移除指定类型的批注。 (继承自 XObject。)
公共方法由 XNA Framework 提供支持RemoveAnnotations<T>()从此 XObject 移除指定类型的批注。 (继承自 XObject。)
公共方法由 XNA Framework 提供支持RemoveNodes从此文档或元素中移除子节点。 (继承自 XContainer。)
公共方法由 XNA Framework 提供支持ReplaceNodes(Object)使用指定的内容替换此文档或元素的子节点。 (继承自 XContainer。)
公共方法由 XNA Framework 提供支持ReplaceNodes(Object[])使用指定的内容替换此文档或元素的子节点。 (继承自 XContainer。)
公共方法由 XNA Framework 提供支持ReplaceWith(Object)使用指定的内容替换此节点。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持ReplaceWith(Object[])使用指定的内容替换此节点。 (继承自 XNode。)
公共方法Save(Stream)将此 XDocument 输出到指定的 Stream
公共方法由 XNA Framework 提供支持Save(String)序列化此 XDocument 到文件,如果该文件存在,则覆盖现有的文件。
公共方法由 XNA Framework 提供支持Save(TextWriter)将此 XDocument 序列化为 TextWriter
公共方法由 XNA Framework 提供支持Save(XmlWriter)将此 XDocument 序列化为 XmlWriter
公共方法Save(Stream, SaveOptions)将此 XDocument 输出到指定的 Stream,也可选择指定格式设置行为。
公共方法由 XNA Framework 提供支持Save(String, SaveOptions)将此 XDocument 序列化为文件,还可以选择禁用格式设置。
公共方法由 XNA Framework 提供支持Save(TextWriter, SaveOptions)将此 XDocument 序列化为 TextWriter,还可以选择禁用格式设置。
公共方法由 XNA Framework 提供支持ToString()返回此节点的缩进 XML。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持ToString(SaveOptions)返回此节点的 XML,还可以选择禁用格式设置。 (继承自 XNode。)
公共方法由 XNA Framework 提供支持WriteTo将此文档写入 XmlWriter (重写 XNode.WriteTo(XmlWriter)。)
页首

  名称说明
公共事件由 XNA Framework 提供支持Changed在此 XObject 或其任何子代发生了更改时引发。 (继承自 XObject。)
公共事件由 XNA Framework 提供支持Changing当此 XObject 或其任何子代要发生更改时引发。 (继承自 XObject。)
页首

  名称说明
公共扩展方法CreateNavigator()已重载。 XNode 创建一个 XPathNavigator (由 Extensions 定义。)
公共扩展方法CreateNavigator(XmlNameTable)已重载。 XNode 创建一个 XPathNavigator XmlNameTable 可以使 XPath 表达式的处理变得更高效。 (由 Extensions 定义。)
公共扩展方法Validate(XmlSchemaSet, ValidationEventHandler)已重载。 此方法验证 XDocument 是否与 XmlSchemaSet 中的 XSD 相符。 (由 Extensions 定义。)
公共扩展方法Validate(XmlSchemaSet, ValidationEventHandler, Boolean)已重载。 验证 XDocument 是否与 XmlSchemaSet 中的某个 XSD 相符,并且可以选择使用架构验证后信息集 (PSVI) 填充 XML 树。 (由 Extensions 定义。)
公共扩展方法XPathEvaluate(String)已重载。 计算 XPath 表达式。 (由 Extensions 定义。)
公共扩展方法XPathEvaluate(String, IXmlNamespaceResolver)已重载。 计算 XPath 表达式,使用指定的 IXmlNamespaceResolver 解析命名空间前缀。 (由 Extensions 定义。)
公共扩展方法XPathSelectElement(String)已重载。 使用 XPath 表达式选择 XElement (由 Extensions 定义。)
公共扩展方法XPathSelectElement(String, IXmlNamespaceResolver)已重载。 使用 XPath 表达式选择 XElement,并使用指定的 IXmlNamespaceResolver 解析命名空间前缀。 (由 Extensions 定义。)
公共扩展方法XPathSelectElements(String)已重载。 使用 XPath 表达式选择一个元素集合。 (由 Extensions 定义。)
公共扩展方法XPathSelectElements(String, IXmlNamespaceResolver)已重载。 使用 XPath 表达式选择一个元素集合,并使用指定的 IXmlNamespaceResolver 解析命名空间前缀。 (由 Extensions 定义。)
页首

  名称说明
显式接口实现私有方法由 XNA Framework 提供支持IXmlLineInfo.HasLineInfo获取一个值,该值指示此 XObject 是否具有行信息。 (继承自 XObject。)
显式接口实现私有属性由 XNA Framework 提供支持IXmlLineInfo.LineNumber获取基础 XmlReader 为此 XObject 报告的行号。 (继承自 XObject。)
显式接口实现私有属性由 XNA Framework 提供支持IXmlLineInfo.LinePosition获取基础 XmlReader 为此 XObject 报告的行位置。 (继承自 XObject。)
页首

有关 XDocument 的有效内容的详细信息,请参见 XElement 和 XDocument 对象的有效内容

下面的示例创建一个文档,然后向其添加注释和元素, 接下来使用查询结果撰写另一文档。

XDocument srcTree = new XDocument(
    new XComment("This is a comment"),
    new XElement("Root",
        new XElement("Child1", "data1"),
        new XElement("Child2", "data2"),
        new XElement("Child3", "data3"),
        new XElement("Child2", "data4"),
        new XElement("Info5", "info5"),
        new XElement("Info6", "info6"),
        new XElement("Info7", "info7"),
        new XElement("Info8", "info8")
    )
);

XDocument doc = new XDocument(
    new XComment("This is a comment"),
    new XElement("Root",
        from el in srcTree.Element("Root").Elements()
        where ((string)el).StartsWith("data")
        select el
    )
);
Console.WriteLine(doc);

该示例产生下面的输出:

<!--This is a comment-->
<Root>
  <Child1>data1</Child1>
  <Child2>data2</Child2>
  <Child3>data3</Child3>
  <Child2>data4</Child2>
</Root>

.NET Framework

受以下版本支持:4、3.5

.NET Framework Client Profile

受以下版本支持:4、3.5 SP1

Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2

.NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。
显示: