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 с характеристиками, заданными параметром |
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) | |
Load(XmlReader, LoadOptions) |
Загружает XDocument из XmlReader, при необходимости задавая базовый URI и сохраняя сведения о строках. |
LoadAsync(Stream, LoadOptions, CancellationToken) |
Асинхронно создает XDocument и инициализирует его базовое дерево XML из указанного потока, при необходимости сохраняя пробелы. |
LoadAsync(TextReader, LoadOptions, CancellationToken) |
Создает XDocument и инициализирует его базовое дерево XML с помощью указанного параметра TextReader, при необходимости сохраняя пробелы. |
LoadAsync(XmlReader, LoadOptions, CancellationToken) | |
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) | |
Save(Stream, SaveOptions) |
Выводит данный элемент XDocument в указанный поток Stream, при необходимости задавая поведение форматирования. |
Save(String) |
Необходимо сериализовать этот объект XDocument в файл, перезаписывая существующий файл, если имеется. |
Save(String, SaveOptions) |
Сериализует данный XDocument в файл, при необходимости выключая форматирование. |
Save(TextWriter) |
Сериализует данный документ XDocument в TextWriter. |
Save(TextWriter, SaveOptions) |
Сериализует данный документ XDocument в TextWriter, при необходимости выключая форматирование. |
Save(XmlWriter) | |
SaveAsync(Stream, SaveOptions, CancellationToken) | |
SaveAsync(TextWriter, SaveOptions, CancellationToken) |
Записывает XDocument в TextWriter. |
SaveAsync(XmlWriter, CancellationToken) | |
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 и редактировать его. |