XNode Class (System.Xml.Linq)

Switch View :
ScriptFree
.NET Framework Class Library
XNode Class

Represents the abstract concept of a node (element, comment, document type, processing instruction, or text node) in the XML tree.

Inheritance Hierarchy

System.Object
  System.Xml.Linq.XObject
    System.Xml.Linq.XNode
      System.Xml.Linq.XComment
      System.Xml.Linq.XContainer
      System.Xml.Linq.XDocumentType
      System.Xml.Linq.XProcessingInstruction
      System.Xml.Linq.XText

Namespace:  System.Xml.Linq
Assembly:  System.Xml.Linq (in System.Xml.Linq.dll)
Syntax

Visual Basic
Public MustInherit Class XNode _
	Inherits XObject
C#
public abstract class XNode : XObject
Visual C++
public ref class XNode abstract : public XObject
F#
[<AbstractClass>]
type XNode =  
    class
        inherit XObject
    end

The XNode type exposes the following members.

Properties

  Name Description
Public property Supported by the XNA Framework BaseUri Gets the base URI for this XObject. (Inherited from XObject.)
Public property Supported by the XNA Framework Document Gets the XDocument for this XObject. (Inherited from XObject.)
Public property Static member Supported by the XNA Framework DocumentOrderComparer Gets a comparer that can compare the relative position of two nodes.
Public property Static member Supported by the XNA Framework EqualityComparer Gets a comparer that can compare two nodes for value equality.
Public property Supported by the XNA Framework NextNode Gets the next sibling node of this node.
Public property Supported by the XNA Framework NodeType Gets the node type for this XObject. (Inherited from XObject.)
Public property Supported by the XNA Framework Parent Gets the parent XElement of this XObject. (Inherited from XObject.)
Public property Supported by the XNA Framework PreviousNode Gets the previous sibling node of this node.
Top
Methods

  Name Description
Public method Supported by the XNA Framework AddAfterSelf(Object) Adds the specified content immediately after this node.
Public method Supported by the XNA Framework AddAfterSelf(Object[]) Adds the specified content immediately after this node.
Public method Supported by the XNA Framework AddAnnotation Adds an object to the annotation list of this XObject. (Inherited from XObject.)
Public method Supported by the XNA Framework AddBeforeSelf(Object) Adds the specified content immediately before this node.
Public method Supported by the XNA Framework AddBeforeSelf(Object[]) Adds the specified content immediately before this node.
Public method Supported by the XNA Framework Ancestors() Returns a collection of the ancestor elements of this node.
Public method Supported by the XNA Framework Ancestors(XName) Returns a filtered collection of the ancestor elements of this node. Only elements that have a matching XName are included in the collection.
Public method Supported by the XNA Framework Annotation(Type) Gets the first annotation object of the specified type from this XObject. (Inherited from XObject.)
Public method Supported by the XNA Framework Annotation<T>() Get the first annotation object of the specified type from this XObject. (Inherited from XObject.)
Public method Supported by the XNA Framework Annotations(Type) Gets a collection of annotations of the specified type for this XObject. (Inherited from XObject.)
Public method Supported by the XNA Framework Annotations<T>() Gets a collection of annotations of the specified type for this XObject. (Inherited from XObject.)
Public method Static member Supported by the XNA Framework CompareDocumentOrder Compares two nodes to determine their relative XML document order.
Public method Supported by the XNA Framework CreateReader() Creates an XmlReader for this node.
Public method CreateReader(ReaderOptions) Creates an XmlReader with the options specified by the readerOptions parameter.
Public method Static member Supported by the XNA Framework DeepEquals Compares the values of two nodes, including the values of all descendant nodes.
Public method Supported by the XNA Framework ElementsAfterSelf() Returns a collection of the sibling elements after this node, in document order.
Public method Supported by the XNA Framework ElementsAfterSelf(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.
Public method Supported by the XNA Framework ElementsBeforeSelf() Returns a collection of the sibling elements before this node, in document order.
Public method Supported by the XNA Framework ElementsBeforeSelf(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.
Public method Supported by the XNA Framework Equals(Object) Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected method Supported by the XNA Framework Finalize Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public method Supported by the XNA Framework GetHashCode Serves as a hash function for a particular type. (Inherited from Object.)
Public method Supported by the XNA Framework GetType Gets the Type of the current instance. (Inherited from Object.)
Public method Supported by the XNA Framework IsAfter Determines if the current node appears after a specified node in terms of document order.
Public method Supported by the XNA Framework IsBefore Determines if the current node appears before a specified node in terms of document order.
Protected method Supported by the XNA Framework MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Public method Supported by the XNA Framework NodesAfterSelf Returns a collection of the sibling nodes after this node, in document order.
Public method Supported by the XNA Framework NodesBeforeSelf Returns a collection of the sibling nodes before this node, in document order.
Public method Static member Supported by the XNA Framework ReadFrom Creates an XNode from an XmlReader.
Public method Supported by the XNA Framework Remove Removes this node from its parent.
Public method Supported by the XNA Framework RemoveAnnotations(Type) Removes the annotations of the specified type from this XObject. (Inherited from XObject.)
Public method Supported by the XNA Framework RemoveAnnotations<T>() Removes the annotations of the specified type from this XObject. (Inherited from XObject.)
Public method Supported by the XNA Framework ReplaceWith(Object) Replaces this node with the specified content.
Public method Supported by the XNA Framework ReplaceWith(Object[]) Replaces this node with the specified content.
Public method Supported by the XNA Framework ToString() Returns the indented XML for this node. (Overrides Object.ToString().)
Public method Supported by the XNA Framework ToString(SaveOptions) Returns the XML for this node, optionally disabling formatting.
Public method Supported by the XNA Framework WriteTo Writes this node to an XmlWriter.
Top
Events

  Name Description
Public event Supported by the XNA Framework Changed Raised when this XObject or any of its descendants have changed. (Inherited from XObject.)
Public event Supported by the XNA Framework Changing Raised when this XObject or any of its descendants are about to change. (Inherited from XObject.)
Top
Extension Methods

  Name Description
Public Extension Method CreateNavigator() Overloaded. Creates an XPathNavigator for an XNode. (Defined by Extensions.)
Public Extension Method CreateNavigator(XmlNameTable) Overloaded. Creates an XPathNavigator for an XNode. The XmlNameTable enables more efficient XPath expression processing. (Defined by Extensions.)
Public Extension Method XPathEvaluate(String) Overloaded. Evaluates an XPath expression. (Defined by Extensions.)
Public Extension Method XPathEvaluate(String, IXmlNamespaceResolver) Overloaded. Evaluates an XPath expression, resolving namespace prefixes using the specified IXmlNamespaceResolver. (Defined by Extensions.)
Public Extension Method XPathSelectElement(String) Overloaded. Selects an XElement using a XPath expression. (Defined by Extensions.)
Public Extension Method XPathSelectElement(String, IXmlNamespaceResolver) Overloaded. Selects an XElement using a XPath expression, resolving namespace prefixes using the specified IXmlNamespaceResolver. (Defined by Extensions.)
Public Extension Method XPathSelectElements(String) Overloaded. Selects a collection of elements using an XPath expression. (Defined by Extensions.)
Public Extension Method XPathSelectElements(String, IXmlNamespaceResolver) Overloaded. Selects a collection of elements using an XPath expression, resolving namespace prefixes using the specified IXmlNamespaceResolver. (Defined by Extensions.)
Top
Explicit Interface Implementations

  Name Description
Explicit interface implemetation Private method Supported by the XNA Framework IXmlLineInfo.HasLineInfo Gets a value indicating whether or not this XObject has line information. (Inherited from XObject.)
Explicit interface implemetation Private property Supported by the XNA Framework IXmlLineInfo.LineNumber Gets the line number that the underlying XmlReader reported for this XObject. (Inherited from XObject.)
Explicit interface implemetation Private property Supported by the XNA Framework IXmlLineInfo.LinePosition Gets the line position that the underlying XmlReader reported for this XObject. (Inherited from XObject.)
Top
Remarks

XNode is an abstract common base class for the following types:

XContainer is an abstract common base class for the following types:

Objects of classes that derive from XContainer can contain child nodes.

Note Note

An XAttribute is not an XNode. Attributes are maintained as a list of name/value pairs on an element.

If you are writing a complex XML application, such as an XML editor or a word processor that stores content as XML, you will often work at the node level. Typical activities when working at the node level include adding nodes, deleting nodes, transforming nodes, and iterating through axes that return collections of nodes.

Version Information

.NET Framework

Supported in: 4, 3.5

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Platforms

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

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

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
See Also

Reference

Other Resources