XDocument Класс

Определение

Представляет XML-документ.Represents an XML document. Информацию о компонентах и использовании объекта XDocument см. в статье Общие сведения о классах XDocument.For the components and usage of an XDocument object, see XDocument Class Overview.

public ref class XDocument : System::Xml::Linq::XContainer
public class XDocument : System.Xml.Linq.XContainer
type XDocument = class
    inherit XContainer
Public Class XDocument
Inherits XContainer
Наследование

Примеры

В следующем примере создается документ, а затем в него добавляется комментарий и элемент.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);  
Dim srcTree As XDocument = _   
    <?xml version="1.0" encoding="utf-8" standalone="yes"?>  
        <!--This is a comment-->  
        <Root>  
            <Child1>data1</Child1>  
            <Child2>data2</Child2>  
            <Child3>data3</Child3>  
            <Child2>data4</Child2>  
            <Info5>info5</Info5>  
            <Info6>info6</Info6>  
            <Info7>info7</Info7>  
            <Info8>info8</Info8>  
        </Root>  
Dim doc As XDocument = _   
    <?xml version="1.0" encoding="utf-8" standalone="yes"?>  
        <!--This is a comment-->  
        <Root>  
            <%= From el In srcTree.<Root>.Elements _  
                Where CStr(el).StartsWith("data") _  
                Select el %>  
        </Root>  
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>  

Комментарии

Дополнительные сведения о допустимом содержимом XDocument см. в разделе допустимое содержимое объектов XElement и XDocument.For details about the valid content of an XDocument, see Valid Content of XElement and XDocument Objects.

Конструкторы

XDocument()

Инициализирует новый экземпляр класса XDocument.Initializes a new instance of the XDocument class.

XDocument(Object[])

Инициализирует новый экземпляр класса XDocument с указанным содержимым.Initializes a new instance of the XDocument class with the specified content.

XDocument(XDeclaration, Object[])

Инициализация нового экземпляра класса XDocument с указанным XDeclaration и содержимым.Initializes a new instance of the XDocument class with the specified XDeclaration and content.

XDocument(XDocument)

Инициализирует новый экземпляр класса XDocument из существующего объекта XDocument.Initializes a new instance of the XDocument class from an existing XDocument object.

Свойства

BaseUri

Получение базового URI для данного XObject.Gets the base URI for this XObject.

(Унаследовано от XObject)
Declaration

Возвращает или задает объявление XML для этого документа.Gets or sets the XML declaration for this document.

Document

Получает объект XDocument для данного элемента XObject.Gets the XDocument for this XObject.

(Унаследовано от XObject)
DocumentType

Возвращает определение типа документа (DTD) для этого документа.Gets the Document Type Definition (DTD) for this document.

FirstNode

Получает первый дочерний узел от этого узла.Gets the first child node of this node.

(Унаследовано от XContainer)
LastNode

Получает последний дочерний узел от этого узла.Gets the last child node of this node.

(Унаследовано от XContainer)
NextNode

Возвращает для данного узла следующий узел того же уровня.Gets the next sibling node of this node.

(Унаследовано от XNode)
NodeType

Возвращает тип узла для этого узла.Gets the node type for this node.

Parent

Возвращает родительский объект XElement этого объекта XObject.Gets the parent XElement of this XObject.

(Унаследовано от XObject)
PreviousNode

Возвращает предыдущий узел того же уровня для данного узла.Gets the previous sibling node of this node.

(Унаследовано от XNode)
Root

Возвращает корневой элемент дерева XML для этого документа.Gets the root element of the XML Tree for this document.

Методы

Add(Object)

Добавляет указанное содержимое в качестве дочерних элементов данного объекта XContainer.Adds the specified content as children of this XContainer.

(Унаследовано от XContainer)
Add(Object[])

Добавляет указанное содержимое в качестве дочерних элементов данного объекта XContainer.Adds the specified content as children of this XContainer.

(Унаследовано от XContainer)
AddAfterSelf(Object)

Добавляет указанное содержимое непосредственно после данного узла.Adds the specified content immediately after this node.

(Унаследовано от XNode)
AddAfterSelf(Object[])

Добавляет указанное содержимое непосредственно после данного узла.Adds the specified content immediately after this node.

(Унаследовано от XNode)
AddAnnotation(Object)

Добавление объекта в список примечаний данного XObject.Adds an object to the annotation list of this XObject.

(Унаследовано от XObject)
AddBeforeSelf(Object)

Добавляет указанное содержимое непосредственно перед данным узлом.Adds the specified content immediately before this node.

(Унаследовано от XNode)
AddBeforeSelf(Object[])

Добавляет указанное содержимое непосредственно перед данным узлом.Adds the specified content immediately before this node.

(Унаследовано от XNode)
AddFirst(Object)

Добавляет заданное содержимое как первые дочерние элементы данного документа или элемента.Adds the specified content as the first children of this document or element.

(Унаследовано от XContainer)
AddFirst(Object[])

Добавляет заданное содержимое как первые дочерние элементы данного документа или элемента.Adds the specified content as the first children of this document or element.

(Унаследовано от XContainer)
Ancestors()

Возвращает коллекцию элементов-предков данного узла.Returns a collection of the ancestor elements of this node.

(Унаследовано от XNode)
Ancestors(XName)

Возвращает отфильтрованную коллекцию элементов-предков данного узла.Returns a filtered collection of the ancestor elements of this node. В коллекцию включаются только элементы, соответствующие XName.Only elements that have a matching XName are included in the collection.

(Унаследовано от XNode)
Annotation(Type)

Получение первого объекта примечаний заданного типа из данного XObject.Gets the first annotation object of the specified type from this XObject.

(Унаследовано от XObject)
Annotation<T>()

Получение первого объекта примечаний заданного типа из данного XObject.Gets the first annotation object of the specified type from this XObject.

(Унаследовано от XObject)
Annotations(Type)

Получение коллекции примечаний заданного типа для данного XObject.Gets a collection of annotations of the specified type for this XObject.

(Унаследовано от XObject)
Annotations<T>()

Получение коллекции примечаний заданного типа для данного XObject.Gets a collection of annotations of the specified type for this XObject.

(Унаследовано от XObject)
CreateReader()

Создает объект XmlReader для данного узла.Creates an XmlReader for this node.

(Унаследовано от XNode)
CreateReader(ReaderOptions)

Создает объект XmlReader с характеристиками, заданными параметром readerOptions.Creates an XmlReader with the options specified by the readerOptions parameter.

(Унаследовано от XNode)
CreateWriter()

Создает XmlWriter, который можно использовать для добавления узлов в XContainer.Creates an XmlWriter that can be used to add nodes to the XContainer.

(Унаследовано от XContainer)
DescendantNodes()

Возвращает коллекцию подчиненных узлов для документа или элемента в порядке следования документов.Returns a collection of the descendant nodes for this document or element, in document order.

(Унаследовано от XContainer)
Descendants()

Возвращает коллекцию подчиненных узлов для данного документа или элемента в порядке следования документов.Returns a collection of the descendant elements for this document or element, in document order.

(Унаследовано от XContainer)
Descendants(XName)

Возвращает фильтрованную коллекцию подчиненных узлов для данного документа или элемента в порядке следования документов.Returns a filtered collection of the descendant elements for this document or element, in document order. В коллекцию включаются только элементы, соответствующие XName.Only elements that have a matching XName are included in the collection.

(Унаследовано от XContainer)
Element(XName)

Получает первый (в порядке следования документа) дочерний элемент с заданным XName.Gets the first (in document order) child element with the specified XName.

(Унаследовано от XContainer)
Elements()

Возвращает коллекцию дочерних элементов для данного документа или элемента в порядке следования документа.Returns a collection of the child elements of this element or document, in document order.

(Унаследовано от XContainer)
Elements(XName)

Возвращает фильтрованную коллекцию дочерних элементов для данного документа или элемента в порядке следования документа.Returns a filtered collection of the child elements of this element or document, in document order. В коллекцию включаются только элементы, соответствующие XName.Only elements that have a matching XName are included in the collection.

(Унаследовано от XContainer)
ElementsAfterSelf()

Возвращает после данного узла коллекцию элементов того же уровня в порядке их следования в документе.Returns a collection of the sibling elements after this node, in document order.

(Унаследовано от XNode)
ElementsAfterSelf(XName)

Возвращает после данного узла отфильтрованную коллекцию элементов того же уровня в порядке их следования в документе.Returns a filtered collection of the sibling elements after this node, in document order. В коллекцию включаются только элементы, соответствующие XName.Only elements that have a matching XName are included in the collection.

(Унаследовано от XNode)
ElementsBeforeSelf()

Возвращает перед данным узлом коллекцию элементов того же уровня в порядке их следования в документе.Returns a collection of the sibling elements before this node, in document order.

(Унаследовано от XNode)
ElementsBeforeSelf(XName)

Возвращает перед данным узлом отфильтрованную коллекцию элементов того же уровня в порядке их следования в документе.Returns a filtered collection of the sibling elements before this node, in document order. В коллекцию включаются только элементы, соответствующие XName.Only elements that have a matching XName are included in the collection.

(Унаследовано от XNode)
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.Serves as the default hash function.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
IsAfter(XNode)

Определяет, следует ли текущий узел за указанным в последовательности их расположения в документе.Determines if the current node appears after a specified node in terms of document order.

(Унаследовано от XNode)
IsBefore(XNode)

Определяет, предшествует ли текущий узел указанному в последовательности их расположения в документе.Determines if the current node appears before a specified node in terms of document order.

(Унаследовано от XNode)
Load(Stream)

Создает новый экземпляр XDocument с помощью указанного потока.Creates a new XDocument instance by using the specified stream.

Load(Stream, LoadOptions)

Создает новый экземплярXDocument, используя указанный поток и при необходимости оставляя пустое пространство, задавая базовый URI и сохраняя сведения о строках.Creates a new XDocument instance by using the specified stream, optionally preserving white space, setting the base URI, and retaining line information.

Load(String)

Создает новый XDocument из файла.Creates a new XDocument from a file.

Load(String, LoadOptions)

Создает новый XDocument из файла, при необходимости оставляя пустое пространство, задавая базовый URI и сохраняя сведения о строках.Creates a new XDocument from a file, optionally preserving white space, setting the base URI, and retaining line information.

Load(TextReader)

Создает новый XDocument из TextReader.Creates a new XDocument from a TextReader.

Load(TextReader, LoadOptions)

Создает новый документ XDocument из объекта TextReader, при необходимости оставляя пустое пространство, задавая базовый URI и сохраняя сведения о строках.Creates a new XDocument from a TextReader, optionally preserving white space, setting the base URI, and retaining line information.

Load(XmlReader)

Создает новый документ XDocument из объекта XmlReader.Creates a new XDocument from an XmlReader.

Load(XmlReader, LoadOptions)

Загружает XDocument из XmlReader, при необходимости задавая базовый URI и сохраняя сведения о строках.Loads an XDocument from an XmlReader, optionally setting the base URI, and retaining line information.

LoadAsync(Stream, LoadOptions, CancellationToken)

Асинхронно создает XDocument и инициализирует его базовое дерево XML из указанного потока, при необходимости сохраняя пробелы.Asynchronously creates a new XDocument and initializes its underlying XML tree from the specified stream, optionally preserving white space.

LoadAsync(TextReader, LoadOptions, CancellationToken)

Создает XDocument и инициализирует его базовое дерево XML с помощью указанного параметра TextReader, при необходимости сохраняя пробелы.Creates a new XDocument and initializes its underlying XML tree using the specified TextReader parameter, optionally preserving white space.

LoadAsync(XmlReader, LoadOptions, CancellationToken)

Создает XDocument с содержимым указанного XmlReader.Creates a new XDocument containing the contents of the specified XmlReader.

MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
Nodes()

Возвращает коллекцию дочерних узлов для данного документа или элемента в порядке следования документа.Returns a collection of the child nodes of this element or document, in document order.

(Унаследовано от XContainer)
NodesAfterSelf()

Возвращает после данного узла коллекцию узлов того же уровня в порядке их следования в документе.Returns a collection of the sibling nodes after this node, in document order.

(Унаследовано от XNode)
NodesBeforeSelf()

Возвращает перед данным узлом коллекцию узлов того же уровня в порядке их следования в документе.Returns a collection of the sibling nodes before this node, in document order.

(Унаследовано от XNode)
Parse(String)

Создает новый документ XDocument из строки.Creates a new XDocument from a string.

Parse(String, LoadOptions)

Создает новый документ XDocument из строки, при необходимости оставляя пустое пространство, задавая базовый URI и сохраняя сведения о строках.Creates a new XDocument from a string, optionally preserving white space, setting the base URI, and retaining line information.

Remove()

Удаляет данный узел из родительского объекта.Removes this node from its parent.

(Унаследовано от XNode)
RemoveAnnotations(Type)

Удаление примечаний заданного типа из данного XObject.Removes the annotations of the specified type from this XObject.

(Унаследовано от XObject)
RemoveAnnotations<T>()

Удаление примечаний заданного типа из данного XObject.Removes the annotations of the specified type from this XObject.

(Унаследовано от XObject)
RemoveNodes()

Удаляет дочерние элементы из данного документа или элемента.Removes the child nodes from this document or element.

(Унаследовано от XContainer)
ReplaceNodes(Object)

Заменяет дочерние узлы данного документа или элемента заданным содержимым.Replaces the children nodes of this document or element with the specified content.

(Унаследовано от XContainer)
ReplaceNodes(Object[])

Заменяет дочерние узлы данного документа или элемента заданным содержимым.Replaces the children nodes of this document or element with the specified content.

(Унаследовано от XContainer)
ReplaceWith(Object)

Заменяет данный узел на указанное содержимое.Replaces this node with the specified content.

(Унаследовано от XNode)
ReplaceWith(Object[])

Заменяет данный узел на указанное содержимое.Replaces this node with the specified content.

(Унаследовано от XNode)
Save(Stream)

Выводит этот документ XDocument в указанный поток Stream.Outputs this XDocument to the specified Stream.

Save(Stream, SaveOptions)

Выводит данный элемент XDocument в указанный поток Stream, при необходимости задавая поведение форматирования.Outputs this XDocument to the specified Stream, optionally specifying formatting behavior.

Save(String)

Необходимо сериализовать этот объект XDocument в файл, перезаписывая существующий файл, если имеется.Serialize this XDocument to a file, overwriting an existing file, if it exists.

Save(String, SaveOptions)

Сериализует данный XDocument в файл, при необходимости выключая форматирование.Serialize this XDocument to a file, optionally disabling formatting.

Save(TextWriter)

Сериализует данный документ XDocument в TextWriter.Serialize this XDocument to a TextWriter.

Save(TextWriter, SaveOptions)

Сериализует данный документ XDocument в TextWriter, при необходимости выключая форматирование.Serialize this XDocument to a TextWriter, optionally disabling formatting.

Save(XmlWriter)

Сериализует данный документ XDocument в XmlWriter.Serialize this XDocument to an XmlWriter.

SaveAsync(Stream, SaveOptions, CancellationToken)

Выводит XDocument в Stream.Output this XDocument to a Stream.

SaveAsync(TextWriter, SaveOptions, CancellationToken)

Записывает XDocument в TextWriter.Writes this XDocument to a TextWriter.

SaveAsync(XmlWriter, CancellationToken)

Записывает XDocument в XmlWriter.Writes this XDocument to an XmlWriter.

ToString()

Возвращает предназначенный для данного узла XML.Returns the indented XML for this node.

(Унаследовано от XNode)
ToString(SaveOptions)

Возвращает XML для данного узла (с возможным отключением форматирования).Returns the XML for this node, optionally disabling formatting.

(Унаследовано от XNode)
WriteTo(XmlWriter)

Записывает данный документ в XmlWriter.Write this document to an XmlWriter.

WriteToAsync(XmlWriter, CancellationToken)

Записывает базовое XML-дерево XDocument в указанный XmlWriter.Writes this XDocument's underlying XML tree to the specified XmlWriter.

WriteToAsync(XmlWriter, CancellationToken)

Записывает текущий узел в XmlWriter.Writes the current node to an XmlWriter.

(Унаследовано от XNode)

События

Changed

Возникновение в случае изменения данного XObject или одного из его подчиненных элементов.Raised when this XObject or any of its descendants have changed.

(Унаследовано от XObject)
Changing

Возникновение в случае возможного изменения данного XObject или одного из его подчиненных элементов.Raised when this XObject or any of its descendants are about to change.

(Унаследовано от XObject)

Явные реализации интерфейса

IXmlLineInfo.HasLineInfo()

Получение значения, указывающего, есть ли у данного XObject сведения строки.Gets a value indicating whether or not this XObject has line information.

(Унаследовано от XObject)
IXmlLineInfo.LineNumber

Получения номера строки, которую базовый XmlReader сообщил для данного XObject.Gets the line number that the underlying XmlReader reported for this XObject.

(Унаследовано от XObject)
IXmlLineInfo.LinePosition

Получения номера позиции, которую базовый XmlReader сообщил для данного XObject.Gets the line position that the underlying XmlReader reported for this XObject.

(Унаследовано от XObject)

Методы расширения

Validate(XDocument, XmlSchemaSet, ValidationEventHandler)

Этот метод проверяет соответствие XDocument спецификации XSD в XmlSchemaSet.This method validates that an XDocument conforms to an XSD in an XmlSchemaSet.

Validate(XDocument, XmlSchemaSet, ValidationEventHandler, Boolean)

Проверяет XDocument на соответствие XSD в XmlSchemaSet с возможностью заполнения дерева XML набором сведений после проверки схемы (PSVI).Validates that an XDocument conforms to an XSD in an XmlSchemaSet, optionally populating the XML tree with the post-schema-validation infoset (PSVI).

CreateNavigator(XNode)

Создает XPathNavigator для XNode.Creates an XPathNavigator for an XNode.

CreateNavigator(XNode, XmlNameTable)

Создает XPathNavigator для XNode.Creates an XPathNavigator for an XNode. XmlNameTable обеспечивает более эффективную обработку выражений XPath.The XmlNameTable enables more efficient XPath expression processing.

XPathEvaluate(XNode, String)

Вычисляет выражение XPath.Evaluates an XPath expression.

XPathEvaluate(XNode, String, IXmlNamespaceResolver)

Вычисляет выражение XPath, разрешая префиксы пространств имен с помощью указанного IXmlNamespaceResolver.Evaluates an XPath expression, resolving namespace prefixes using the specified IXmlNamespaceResolver.

XPathSelectElement(XNode, String)

Выбирает XElement с помощью выражения XPath.Selects an XElement using a XPath expression.

XPathSelectElement(XNode, String, IXmlNamespaceResolver)

Выбирает XElement с помощью выражения XPath, разрешая префиксы пространства имен с помощью указанного IXmlNamespaceResolver.Selects an XElement using a XPath expression, resolving namespace prefixes using the specified IXmlNamespaceResolver.

XPathSelectElements(XNode, String)

Выбирает коллекцию элементов с помощью выражения XPath.Selects a collection of elements using an XPath expression.

XPathSelectElements(XNode, String, IXmlNamespaceResolver)

Выбирает коллекцию элементов с помощью выражения XPath, разрешая префиксы пространства имен с помощью указанного IXmlNamespaceResolver.Selects a collection of elements using an XPath expression, resolving namespace prefixes using the specified IXmlNamespaceResolver.

ToXPathNavigable(XNode)

Возвращает метод доступа, который позволяет переходить к указанному XNode и редактировать его.Returns an accessor that allows you to navigate and edit the specified XNode.

Применяется к

См. также раздел