XDocument Class

Represents an XML document. For the components and usage of an XDocument object, see XDocument Class Overview.

To browse the .NET Framework source code for this type, see the Reference Source.

Namespace:  System.Xml.Linq
Assemblies:   System.Xml.Linq (in System.Xml.Linq.dll)
  System.Xml.XDocument (in System.Xml.XDocument.dll)

public class XDocument : XContainer

The XDocument type exposes the following members.

  NameDescription
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsXDocument()Initializes a new instance of the XDocument class.
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsXDocument(Object[])Initializes a new instance of the XDocument class with the specified content.
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsXDocument(XDocument)Initializes a new instance of the XDocument class from an existing XDocument object.
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsXDocument(XDeclaration, Object[])Initializes a new instance of the XDocument class with the specified XDeclaration and content.
Top

  NameDescription
Public propertySupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsBaseUriGets the base URI for this XObject. (Inherited from XObject.)
Public propertySupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsDeclarationGets or sets the XML declaration for this document.
Public propertySupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsDocumentGets the XDocument for this XObject. (Inherited from XObject.)
Public propertySupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsDocumentTypeGets the Document Type Definition (DTD) for this document.
Public propertySupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsFirstNodeGet the first child node of this node. (Inherited from XContainer.)
Public propertySupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsLastNodeGet the last child node of this node. (Inherited from XContainer.)
Public propertySupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsNextNodeGets the next sibling node of this node. (Inherited from XNode.)
Public propertySupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsNodeTypeGets the node type for this node. (Overrides XObject.NodeType.)
Public propertySupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsParentGets the parent XElement of this XObject. (Inherited from XObject.)
Public propertySupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsPreviousNodeGets the previous sibling node of this node. (Inherited from XNode.)
Public propertySupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsRootGets the root element of the XML Tree for this document.
Top

  NameDescription
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsAdd(Object)Adds the specified content as children of this XContainer. (Inherited from XContainer.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsAdd(Object[])Adds the specified content as children of this XContainer. (Inherited from XContainer.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsAddAfterSelf(Object)Adds the specified content immediately after this node. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsAddAfterSelf(Object[])Adds the specified content immediately after this node. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsAddAnnotationAdds an object to the annotation list of this XObject. (Inherited from XObject.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsAddBeforeSelf(Object)Adds the specified content immediately before this node. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsAddBeforeSelf(Object[])Adds the specified content immediately before this node. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsAddFirst(Object)Adds the specified content as the first children of this document or element. (Inherited from XContainer.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsAddFirst(Object[])Adds the specified content as the first children of this document or element. (Inherited from XContainer.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsAncestors()Returns a collection of the ancestor elements of this node. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsAncestors(XName)Returns a filtered collection of the ancestor elements of this node. Only elements that have a matching XName are included in the collection. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsAnnotation(Type)Gets the first annotation object of the specified type from this XObject. (Inherited from XObject.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsAnnotation<T>()Get the first annotation object of the specified type from this XObject. (Inherited from XObject.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsAnnotations(Type)Gets a collection of annotations of the specified type for this XObject. (Inherited from XObject.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsAnnotations<T>()Gets a collection of annotations of the specified type for this XObject. (Inherited from XObject.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsCreateReader()Creates an XmlReader for this node. (Inherited from XNode.)
Public methodSupported by Portable Class LibrarySupported in .NET for Windows Store appsCreateReader(ReaderOptions)Creates an XmlReader with the options specified by the readerOptions parameter. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsCreateWriterCreates an XmlWriter that can be used to add nodes to the XContainer. (Inherited from XContainer.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsDescendantNodesReturns a collection of the descendant nodes for this document or element, in document order. (Inherited from XContainer.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsDescendants()Returns a collection of the descendant elements for this document or element, in document order. (Inherited from XContainer.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsDescendants(XName)Returns a filtered collection of the descendant elements for this document or element, in document order. Only elements that have a matching XName are included in the collection. (Inherited from XContainer.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsElementGets the first (in document order) child element with the specified XName. (Inherited from XContainer.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsElements()Returns a collection of the child elements of this element or document, in document order. (Inherited from XContainer.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsElements(XName)Returns a filtered collection of the child elements of this element or document, in document order. Only elements that have a matching XName are included in the collection. (Inherited from XContainer.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsElementsAfterSelf()Returns a collection of the sibling elements after this node, in document order. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsElementsAfterSelf(XName)Returns a filtered collection of the sibling elements after this node, in document order. Only elements that have a matching XName are included in the collection. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsElementsBeforeSelf()Returns a collection of the sibling elements before this node, in document order. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsElementsBeforeSelf(XName)Returns a filtered collection of the sibling elements before this node, in document order. Only elements that have a matching XName are included in the collection. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsEquals(Object)Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsGetHashCodeServes as the default hash function. (Inherited from Object.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsIsAfterDetermines if the current node appears after a specified node in terms of document order. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsIsBeforeDetermines if the current node appears before a specified node in terms of document order. (Inherited from XNode.)
Public methodStatic memberSupported by Portable Class LibrarySupported in .NET for Windows Store appsLoad(Stream)Creates a new XDocument instance by using the specified stream.
Public methodStatic memberSupported by the XNA FrameworkSupported in .NET for Windows Store appsLoad(String)Creates a new XDocument from a file.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsLoad(TextReader)Creates a new XDocument from a TextReader.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsLoad(XmlReader)Creates a new XDocument from an XmlReader.
Public methodStatic memberSupported by Portable Class LibrarySupported in .NET for Windows Store appsLoad(Stream, LoadOptions)Creates a new XDocument instance by using the specified stream, optionally preserving white space, setting the base URI, and retaining line information.
Public methodStatic memberSupported by the XNA FrameworkSupported in .NET for Windows Store appsLoad(String, LoadOptions)Creates a new XDocument from a file, optionally preserving white space, setting the base URI, and retaining line information.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsLoad(TextReader, LoadOptions)Creates a new XDocument from a TextReader, optionally preserving white space, setting the base URI, and retaining line information.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsLoad(XmlReader, LoadOptions)Loads an XDocument from an XmlReader, optionally setting the base URI, and retaining line information.
Protected methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsNodesReturns a collection of the child nodes of this element or document, in document order. (Inherited from XContainer.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsNodesAfterSelfReturns a collection of the sibling nodes after this node, in document order. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsNodesBeforeSelfReturns a collection of the sibling nodes before this node, in document order. (Inherited from XNode.)
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsParse(String)Creates a new XDocument from a string.
Public methodStatic memberSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsParse(String, LoadOptions)Creates a new XDocument from a string, optionally preserving white space, setting the base URI, and retaining line information.
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsRemoveRemoves this node from its parent. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsRemoveAnnotations(Type)Removes the annotations of the specified type from this XObject. (Inherited from XObject.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsRemoveAnnotations<T>()Removes the annotations of the specified type from this XObject. (Inherited from XObject.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsRemoveNodesRemoves the child nodes from this document or element. (Inherited from XContainer.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsReplaceNodes(Object)Replaces the children nodes of this document or element with the specified content. (Inherited from XContainer.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsReplaceNodes(Object[])Replaces the children nodes of this document or element with the specified content. (Inherited from XContainer.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsReplaceWith(Object)Replaces this node with the specified content. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsReplaceWith(Object[])Replaces this node with the specified content. (Inherited from XNode.)
Public methodSupported by Portable Class LibrarySupported in .NET for Windows Store appsSave(Stream)Outputs this XDocument to the specified Stream.
Public methodSupported by the XNA FrameworkSave(String)Serialize this XDocument to a file, overwriting an existing file, if it exists.
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsSave(TextWriter)Serialize this XDocument to a TextWriter.
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsSave(XmlWriter)Serialize this XDocument to an XmlWriter.
Public methodSupported by Portable Class LibrarySupported in .NET for Windows Store appsSave(Stream, SaveOptions)Outputs this XDocument to the specified Stream, optionally specifying formatting behavior.
Public methodSupported by the XNA FrameworkSave(String, SaveOptions)Serialize this XDocument to a file, optionally disabling formatting.
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsSave(TextWriter, SaveOptions)Serialize this XDocument to a TextWriter, optionally disabling formatting.
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsToString()Returns the indented XML for this node. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsToString(SaveOptions)Returns the XML for this node, optionally disabling formatting. (Inherited from XNode.)
Public methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsWriteToWrite this document to an XmlWriter. (Overrides XNode.WriteTo(XmlWriter).)
Top

  NameDescription
Public eventSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsChangedRaised when this XObject or any of its descendants have changed. (Inherited from XObject.)
Public eventSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsChangingRaised when this XObject or any of its descendants are about to change. (Inherited from XObject.)
Top

  NameDescription
Public Extension MethodCreateNavigator()Overloaded. Creates an XPathNavigator for an XNode. (Defined by Extensions.)
Public Extension MethodCreateNavigator(XmlNameTable)Overloaded. Creates an XPathNavigator for an XNode. The XmlNameTable enables more efficient XPath expression processing. (Defined by Extensions.)
Public Extension MethodValidate(XmlSchemaSet, ValidationEventHandler)Overloaded. This method validates that an XDocument conforms to an XSD in an XmlSchemaSet. (Defined by Extensions.)
Public Extension MethodValidate(XmlSchemaSet, ValidationEventHandler, Boolean)Overloaded. Validates that an XDocument conforms to an XSD in an XmlSchemaSet, optionally populating the XML tree with the post-schema-validation infoset (PSVI). (Defined by Extensions.)
Public Extension MethodXPathEvaluate(String)Overloaded. Evaluates an XPath expression. (Defined by Extensions.)
Public Extension MethodXPathEvaluate(String, IXmlNamespaceResolver)Overloaded. Evaluates an XPath expression, resolving namespace prefixes using the specified IXmlNamespaceResolver. (Defined by Extensions.)
Public Extension MethodXPathSelectElement(String)Overloaded. Selects an XElement using a XPath expression. (Defined by Extensions.)
Public Extension MethodXPathSelectElement(String, IXmlNamespaceResolver)Overloaded. Selects an XElement using a XPath expression, resolving namespace prefixes using the specified IXmlNamespaceResolver. (Defined by Extensions.)
Public Extension MethodXPathSelectElements(String)Overloaded. Selects a collection of elements using an XPath expression. (Defined by Extensions.)
Public Extension MethodXPathSelectElements(String, IXmlNamespaceResolver)Overloaded. Selects a collection of elements using an XPath expression, resolving namespace prefixes using the specified IXmlNamespaceResolver. (Defined by Extensions.)
Top

  NameDescription
Explicit interface implemetationPrivate methodSupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsIXmlLineInfo.HasLineInfoGets a value indicating whether or not this XObject has line information. (Inherited from XObject.)
Explicit interface implemetationPrivate propertySupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsIXmlLineInfo.LineNumberGets the line number that the underlying XmlReader reported for this XObject. (Inherited from XObject.)
Explicit interface implemetationPrivate propertySupported by the XNA FrameworkSupported by Portable Class LibrarySupported in .NET for Windows Store appsIXmlLineInfo.LinePositionGets the line position that the underlying XmlReader reported for this XObject. (Inherited from XObject.)
Top

NoteNote

To view the .NET Framework source code for this type, see the Reference Source. You can browse through the source code online, download the reference for offline viewing, and step through the sources (including patches and updates) during debugging; see instructions.

For details about the valid content of an XDocument, see Valid Content of XElement and XDocument Objects.

The following example creates a document, and then adds a comment and an element to it. It then composes another document using the results of a query.

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 example produces the following output:

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

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library

.NET for Windows Store apps

Supported in: Windows 8

Supported in: Windows Phone 8.1

Supported in: Windows Phone Silverlight 8.1

Supported in: Windows Phone Silverlight 8

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Show:
© 2014 Microsoft