XDocument Класс

Определение

Представляет XML-документ. Информацию о компонентах и использовании объекта XDocument см. в статье Общие сведения о классах XDocument.

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
Наследование

Примеры

В следующем примере создается документ, а затем добавляется комментарий и элемент в него. Затем он создает другой документ с помощью результатов запроса.

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 is a comment-->  
<Root>  
  <Child1>data1</Child1>  
  <Child2>data2</Child2>  
  <Child3>data3</Child3>  
  <Child2>data4</Child2>  
</Root>  

Комментарии

Дополнительные сведения о допустимом содержимом XDocumentобъекта см. в разделе "Допустимое содержимое объектов XElement и XDocument".

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

XDocument()

Инициализирует новый экземпляр класса XDocument.

XDocument(Object[])

Инициализирует новый экземпляр класса XDocument с указанным содержимым.

XDocument(XDeclaration, Object[])

Инициализация нового экземпляра класса XDocument с указанным XDeclaration и содержимым.

XDocument(XDocument)

Инициализирует новый экземпляр класса XDocument из существующего объекта XDocument.

Свойства

BaseUri

Получение базового URI для данного XObject.

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

Возвращает или задает объявление XML для этого документа.

Document

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

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

Возвращает определение типа документа (DTD) для этого документа.

FirstNode

Получает первый дочерний узел от этого узла.

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

Получает последний дочерний узел от этого узла.

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

Возвращает для данного узла следующий узел того же уровня.

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

Возвращает тип узла для этого узла.

Parent

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

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

Возвращает предыдущий узел того же уровня для данного узла.

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

Возвращает корневой элемент дерева XML для этого документа.

Методы

Add(Object)

Добавляет указанное содержимое в качестве дочерних элементов данного объекта XContainer.

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

Добавляет указанное содержимое в качестве дочерних элементов данного объекта XContainer.

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

Добавляет указанное содержимое непосредственно после данного узла.

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

Добавляет указанное содержимое непосредственно после данного узла.

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

Добавление объекта в список примечаний данного XObject.

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

Добавляет указанное содержимое непосредственно перед данным узлом.

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

Добавляет указанное содержимое непосредственно перед данным узлом.

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

Добавляет заданное содержимое как первые дочерние элементы данного документа или элемента.

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

Добавляет заданное содержимое как первые дочерние элементы данного документа или элемента.

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

Возвращает коллекцию элементов-предков данного узла.

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

Возвращает отфильтрованную коллекцию элементов-предков данного узла. В коллекцию включаются только элементы, соответствующие XName.

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

Получение первого объекта примечаний заданного типа из данного XObject.

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

Получение первого объекта примечаний заданного типа из данного XObject.

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

Получение коллекции примечаний заданного типа для данного XObject.

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

Получение коллекции примечаний заданного типа для данного XObject.

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

Создает объект XmlReader для данного узла.

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

Создает объект XmlReader с характеристиками, заданными параметром readerOptions.

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

Создает XmlWriter, который можно использовать для добавления узлов в XContainer.

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

Возвращает коллекцию подчиненных узлов для документа или элемента в порядке следования документов.

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

Возвращает коллекцию подчиненных узлов для данного документа или элемента в порядке следования документов.

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

Возвращает фильтрованную коллекцию подчиненных узлов для данного документа или элемента в порядке следования документов. В коллекцию включаются только элементы, соответствующие XName.

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

Получает первый (в порядке следования документа) дочерний элемент с заданным XName.

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

Возвращает коллекцию дочерних элементов для данного документа или элемента в порядке следования документа.

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

Возвращает фильтрованную коллекцию дочерних элементов для данного документа или элемента в порядке следования документа. В коллекцию включаются только элементы, соответствующие XName.

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

Возвращает после данного узла коллекцию элементов того же уровня в порядке их следования в документе.

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

Возвращает после данного узла отфильтрованную коллекцию элементов того же уровня в порядке их следования в документе. В коллекцию включаются только элементы, соответствующие XName.

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

Возвращает перед данным узлом коллекцию элементов того же уровня в порядке их следования в документе.

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

Возвращает перед данным узлом отфильтрованную коллекцию элементов того же уровня в порядке их следования в документе. В коллекцию включаются только элементы, соответствующие XName.

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

Определяет, равен ли указанный объект текущему объекту.

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

Служит хэш-функцией по умолчанию.

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

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

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

Определяет, следует ли текущий узел за указанным в последовательности их расположения в документе.

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

Определяет, предшествует ли текущий узел указанному в последовательности их расположения в документе.

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

Создает новый экземпляр XDocument с помощью указанного потока.

Load(Stream, LoadOptions)

Создает новый экземплярXDocument, используя указанный поток и при необходимости оставляя пустое пространство, задавая базовый URI и сохраняя сведения о строках.

Load(String)

Создает новый XDocument из файла.

Load(String, LoadOptions)

Создает новый XDocument из файла, при необходимости оставляя пустое пространство, задавая базовый URI и сохраняя сведения о строках.

Load(TextReader)

Создает новый XDocument из TextReader.

Load(TextReader, LoadOptions)

Создает новый документ XDocument из объекта TextReader, при необходимости оставляя пустое пространство, задавая базовый URI и сохраняя сведения о строках.

Load(XmlReader)

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

Load(XmlReader, LoadOptions)

Загружает XDocument из XmlReader, при необходимости задавая базовый URI и сохраняя сведения о строках.

LoadAsync(Stream, LoadOptions, CancellationToken)

Асинхронно создает XDocument и инициализирует его базовое дерево XML из указанного потока, при необходимости сохраняя пробелы.

LoadAsync(TextReader, LoadOptions, CancellationToken)

Создает XDocument и инициализирует его базовое дерево XML с помощью указанного параметра TextReader, при необходимости сохраняя пробелы.

LoadAsync(XmlReader, LoadOptions, CancellationToken)

Создает XDocument с содержимым указанного XmlReader.

MemberwiseClone()

Создает неполную копию текущего объекта Object.

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

Возвращает коллекцию дочерних узлов для данного документа или элемента в порядке следования документа.

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

Возвращает после данного узла коллекцию узлов того же уровня в порядке их следования в документе.

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

Возвращает перед данным узлом коллекцию узлов того же уровня в порядке их следования в документе.

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

Создает новый документ XDocument из строки.

Parse(String, LoadOptions)

Создает новый документ XDocument из строки, при необходимости оставляя пустое пространство, задавая базовый URI и сохраняя сведения о строках.

Remove()

Удаляет данный узел из родительского объекта.

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

Удаление примечаний заданного типа из данного XObject.

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

Удаление примечаний заданного типа из данного XObject.

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

Удаляет дочерние элементы из данного документа или элемента.

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

Заменяет дочерние узлы данного документа или элемента заданным содержимым.

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

Заменяет дочерние узлы данного документа или элемента заданным содержимым.

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

Заменяет данный узел на указанное содержимое.

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

Заменяет данный узел на указанное содержимое.

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

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

Save(Stream, SaveOptions)

Выводит данный элемент XDocument в указанный поток Stream, при необходимости задавая поведение форматирования.

Save(String)

Необходимо сериализовать этот объект XDocument в файл, перезаписывая существующий файл, если имеется.

Save(String, SaveOptions)

Сериализует данный XDocument в файл, при необходимости выключая форматирование.

Save(TextWriter)

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

Save(TextWriter, SaveOptions)

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

Save(XmlWriter)

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

SaveAsync(Stream, SaveOptions, CancellationToken)

Выводит XDocument в Stream.

SaveAsync(TextWriter, SaveOptions, CancellationToken)

Записывает XDocument в TextWriter.

SaveAsync(XmlWriter, CancellationToken)

Записывает XDocument в XmlWriter.

ToString()

Возвращает предназначенный для данного узла XML.

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

Возвращает XML для данного узла (с возможным отключением форматирования).

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

Записывает данный документ в XmlWriter.

WriteToAsync(XmlWriter, CancellationToken)

Записывает базовое XML-дерево XDocument в указанный XmlWriter.

WriteToAsync(XmlWriter, CancellationToken)

Записывает текущий узел в XmlWriter.

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

События

Changed

Возникновение в случае изменения данного XObject или одного из его подчиненных элементов.

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

Возникновение в случае возможного изменения данного XObject или одного из его подчиненных элементов.

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

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

IXmlLineInfo.HasLineInfo()

Получение значения, указывающего, есть ли у данного XObject сведения строки.

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

Получения номера строки, которую базовый XmlReader сообщил для данного XObject.

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

Получения номера позиции, которую базовый XmlReader сообщил для данного XObject.

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

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

Validate(XDocument, XmlSchemaSet, ValidationEventHandler)

Этот метод проверяет соответствие XDocument спецификации XSD в XmlSchemaSet.

Validate(XDocument, XmlSchemaSet, ValidationEventHandler, Boolean)

Проверяет XDocument на соответствие XSD в XmlSchemaSet с возможностью заполнения дерева XML набором сведений после проверки схемы (PSVI).

CreateNavigator(XNode)

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

CreateNavigator(XNode, XmlNameTable)

Создает XPathNavigator для XNode. XmlNameTable обеспечивает более эффективную обработку выражений XPath.

XPathEvaluate(XNode, String)

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

XPathEvaluate(XNode, String, IXmlNamespaceResolver)

Вычисляет выражение XPath, разрешая префиксы пространств имен с помощью указанного IXmlNamespaceResolver.

XPathSelectElement(XNode, String)

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

XPathSelectElement(XNode, String, IXmlNamespaceResolver)

Выбирает XElement с помощью выражения XPath, разрешая префиксы пространства имен с помощью указанного IXmlNamespaceResolver.

XPathSelectElements(XNode, String)

Выбирает коллекцию элементов с помощью выражения XPath.

XPathSelectElements(XNode, String, IXmlNamespaceResolver)

Выбирает коллекцию элементов с помощью выражения XPath, разрешая префиксы пространства имен с помощью указанного IXmlNamespaceResolver.

ToXPathNavigable(XNode)

Возвращает метод доступа, который позволяет переходить к указанному XNode и редактировать его.

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

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