XElement Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет XML-элемент. Общие сведения об использовании и примерах см. в разделе "Общие сведения о классе XElement " и разделе "Примечания".
public ref class XElement : System::Xml::Linq::XContainer, System::Xml::Serialization::IXmlSerializable
public ref class XElement : System::Xml::Linq::XContainer
public class XElement : System.Xml.Linq.XContainer, System.Xml.Serialization.IXmlSerializable
public class XElement : System.Xml.Linq.XContainer
type XElement = class
inherit XContainer
interface IXmlSerializable
type XElement = class
inherit XContainer
Public Class XElement
Inherits XContainer
Implements IXmlSerializable
Public Class XElement
Inherits XContainer
- Наследование
- Реализации
Примеры
В следующем примере создается дерево XML. Содержимое нового элемента происходит из запроса LINQ.
XElement xmlTree1 = new XElement("Root",
new XElement("Child1", 1),
new XElement("Child2", 2),
new XElement("Child3", 3),
new XElement("Child4", 4),
new XElement("Child5", 5),
new XElement("Child6", 6)
);
XElement xmlTree2 = new XElement("Root",
from el in xmlTree1.Elements()
where((int)el >= 3 && (int)el <= 5)
select el
);
Console.WriteLine(xmlTree2);
Dim xmlTree1 As XElement = _
<Root>
<Child1>1</Child1>
<Child2>2</Child2>
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
<Child6>6</Child6>
</Root>
Dim xmlTree2 As XElement = _
<Root>
<%= From el In xmlTree1.Elements() _
Where el.Value >= 3 And el.Value <= 5 _
Select el %>
</Root>
Console.WriteLine(xmlTree2)
В примере получается следующий вывод.
<Root>
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
</Root>
Ниже приведен тот же пример, но в этом случае XML находится в пространстве имен. Дополнительные сведения см. в статье "Работа с пространствами имен XML".
XNamespace aw = "http://www.adventure-works.com";
XElement xmlTree1 = new XElement(aw + "Root",
new XElement(aw + "Child1", 1),
new XElement(aw + "Child2", 2),
new XElement(aw + "Child3", 3),
new XElement(aw + "Child4", 4),
new XElement(aw + "Child5", 5),
new XElement(aw + "Child6", 6)
);
XElement xmlTree2 = new XElement(aw + "Root",
from el in xmlTree1.Elements()
where((int)el >= 3 && (int)el <= 5)
select el
);
Console.WriteLine(xmlTree2);
Imports <xmlns="http://www.adventure-works.com">
Module Module1
Sub Main()
Dim xmlTree1 As XElement = _
<Root>
<Child1>1</Child1>
<Child2>2</Child2>
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
<Child6>6</Child6>
</Root>
Dim xmlTree2 As XElement = _
<Root>
<%= From el In xmlTree1.Elements() _
Where el.Value >= 3 And el.Value <= 5 _
Select el %>
</Root>
Console.WriteLine(xmlTree2)
End SUb
End Module
В примере получается следующий вывод.
<Root xmlns="http://www.adventure-works.com">
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
</Root>
Комментарии
Этот класс представляет XML-элемент, фундаментальную конструкцию XML. Дополнительные сведения об использовании см. в обзоре класса XElement .
Элемент имеет XNameодин или несколько атрибутов и может содержать содержимое (дополнительные сведения см. в статье Nodes).
Может XElement содержать следующие типы содержимого:
Дополнительные сведения о допустимом содержимом объекта см. в разделе "Допустимое содержимое объектов XElement" и "XDocument".XElement
XElement производный от XContainer, который является производным от XNode.
Некоторые XElement методы можно использовать из XAML. Дополнительные сведения см. в LINQ to XML: динамические свойства.
Конструкторы
| Имя | Описание |
|---|---|
| XElement(XElement) |
Инициализирует новый экземпляр класса из другого XElementXElement объекта. |
| XElement(XName, Object) |
Инициализирует новый экземпляр XElement класса с указанным именем и содержимым. |
| XElement(XName, Object[]) |
Инициализирует новый экземпляр XElement класса с указанным именем и содержимым. |
| XElement(XName) |
Инициализирует новый экземпляр XElement класса с указанным именем. |
| XElement(XStreamingElement) |
Инициализирует новый экземпляр класса XElement из объекта XStreamingElement. |
Свойства
| Имя | Описание |
|---|---|
| BaseUri |
Получает базовый универсальный код ресурса (URI) для этого XObject. (Унаследовано от XObject) |
| Document |
XDocument Возвращает значение для этогоXObject. (Унаследовано от XObject) |
| EmptySequence |
Возвращает пустую коллекцию элементов. |
| FirstAttribute |
Возвращает первый атрибут этого элемента. |
| FirstNode |
Возвращает первый дочерний узел этого узла. (Унаследовано от XContainer) |
| HasAttributes |
Возвращает значение, указывающее, имеет ли этот элемент хотя бы один атрибут. |
| HasElements |
Возвращает значение, указывающее, имеет ли этот элемент хотя бы один дочерний элемент. |
| IsEmpty |
Возвращает значение, указывающее, содержит ли этот элемент содержимое. |
| LastAttribute |
Возвращает последний атрибут этого элемента. |
| LastNode |
Возвращает последний дочерний узел этого узла. (Унаследовано от XContainer) |
| Name |
Возвращает или задает имя этого элемента. |
| NextNode |
Возвращает следующий одноуровневый узел этого узла. (Унаследовано от XNode) |
| NodeType |
Возвращает тип узла для этого узла. |
| Parent |
Возвращает родительский элемент XElement этого XObjectэлемента. (Унаследовано от XObject) |
| PreviousNode |
Возвращает предыдущий одноуровневый узел этого узла. (Унаследовано от XNode) |
| Value |
Возвращает или задает сцепленное текстовое содержимое этого элемента. |
Методы
| Имя | Описание |
|---|---|
| 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) |
| AncestorsAndSelf() |
Возвращает коллекцию элементов, содержащих этот элемент, и предки этого элемента. |
| AncestorsAndSelf(XName) |
Возвращает отфильтрованную коллекцию элементов, содержащих этот элемент, и предки этого элемента. В коллекцию включены только элементы с соответствующими XName. |
| Annotation(Type) |
Получает первый объект заметки указанного типа из этого XObject. (Унаследовано от XObject) |
| Annotation<T>() |
Получает первый объект заметки указанного типа из этого XObject. (Унаследовано от XObject) |
| Annotations(Type) |
Возвращает коллекцию заметок указанного типа для этого XObject. (Унаследовано от XObject) |
| Annotations<T>() |
Возвращает коллекцию заметок указанного типа для этого XObject. (Унаследовано от XObject) |
| Attribute(XName) |
XAttribute Возвращает значение, XElement которое содержит указанный XNameобъект. |
| Attributes() |
Возвращает коллекцию атрибутов этого элемента. |
| Attributes(XName) |
Возвращает отфильтрованную коллекцию атрибутов этого элемента. В коллекцию XName включены только атрибуты, имеющие сопоставление. |
| CreateReader() |
XmlReader Создает для этого узла. (Унаследовано от XNode) |
| CreateReader(ReaderOptions) |
XmlReader Создает параметр с параметрами, указанными параметром |
| CreateWriter() |
Создает объект XmlWriter , который можно использовать для добавления узлов в объект XContainer. (Унаследовано от XContainer) |
| DescendantNodes() |
Возвращает коллекцию потомков для этого документа или элемента в порядке документа. (Унаследовано от XContainer) |
| DescendantNodesAndSelf() |
Возвращает коллекцию узлов, содержащих этот элемент, и все потомки этого элемента в порядке документа. |
| Descendants() |
Возвращает коллекцию потомков для этого документа или элемента в порядке документа. (Унаследовано от XContainer) |
| Descendants(XName) |
Возвращает отфильтрованную коллекцию элементов-потомков для этого документа или элемента в порядке документа. В коллекцию включены только элементы с соответствующими XName. (Унаследовано от XContainer) |
| DescendantsAndSelf() |
Возвращает коллекцию элементов, содержащих этот элемент, и все потомки этого элемента в порядке документа. |
| DescendantsAndSelf(XName) |
Возвращает отфильтрованную коллекцию элементов, содержащих этот элемент, и все потомки этого элемента в порядке документа. В коллекцию включены только элементы с соответствующими XName. |
| 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) |
| GetDefaultNamespace() |
Возвращает значение по умолчаниюXNamespace.XElement |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetNamespaceOfPrefix(String) |
Возвращает пространство имен, связанное с определенным префиксом для этого XElement. |
| GetPrefixOfNamespace(XNamespace) |
Получает префикс, связанный с пространством имен для этого XElement. |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| IsAfter(XNode) |
Определяет, отображается ли текущий узел после указанного узла с точки зрения порядка документов. (Унаследовано от XNode) |
| IsBefore(XNode) |
Определяет, отображается ли текущий узел перед указанным узлом с точки зрения порядка документов. (Унаследовано от XNode) |
| Load(Stream, LoadOptions) |
Создает новый XElement экземпляр с помощью указанного потока, при необходимости сохраняя пробелы, устанавливая базовый универсальный код ресурса (URI) и сохраняя сведения о строке. |
| Load(Stream) |
Создает новый XElement экземпляр с помощью указанного потока. |
| Load(String, LoadOptions) |
XElement Загружает файл из файла, при необходимости сохраняя пробелы, устанавливая базовый универсальный код ресурса (URI) и сохраняя сведения о строке. |
| Load(String) |
Загружает файл XElement из файла. |
| Load(TextReader, LoadOptions) |
XElement Загружает данные из TextReader, при необходимости сохраняя пробелы и сохраняя сведения о строке. |
| Load(TextReader) |
Загружает объект XElement из TextReader. |
| Load(XmlReader, LoadOptions) |
XElement Загружает данные из XmlReader, при необходимости сохраняя пробелы, устанавливая базовый универсальный код ресурса (URI) и сохраняя сведения о строке. |
| Load(XmlReader) | |
| LoadAsync(Stream, LoadOptions, CancellationToken) |
Асинхронно создает новый XElement и инициализирует его базовое XML-дерево с помощью указанного потока, при необходимости сохраняя пробелы. |
| LoadAsync(TextReader, LoadOptions, CancellationToken) |
Асинхронно создает новый XElement и инициализирует его базовое XML-дерево с помощью указанного средства чтения текста, при необходимости сохраняя пробелы. |
| LoadAsync(XmlReader, LoadOptions, CancellationToken) |
Асинхронно создает новый XElement и инициализирует его базовое дерево XML с помощью указанного средства чтения XML, при необходимости сохраняя пробелы. |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| Nodes() |
Возвращает коллекцию дочерних узлов этого элемента или документа в порядке документа. (Унаследовано от XContainer) |
| NodesAfterSelf() |
Возвращает коллекцию одноуровневых узлов после этого узла в порядке документа. (Унаследовано от XNode) |
| NodesBeforeSelf() |
Возвращает коллекцию одноуровневых узлов перед этим узлом в порядке документа. (Унаследовано от XNode) |
| Parse(String, LoadOptions) |
XElement Загрузите строку, содержащую XML, при необходимости сохраняя пробелы и сохраняя сведения о строке. |
| Parse(String) |
XElement Загрузите из строки, содержащей XML. |
| Remove() |
Удаляет этот узел из родительского элемента. (Унаследовано от XNode) |
| RemoveAll() |
Удаляет узлы и атрибуты из этого XElement. |
| RemoveAnnotations(Type) |
Удаляет заметки указанного типа из этого XObject. (Унаследовано от XObject) |
| RemoveAnnotations<T>() |
Удаляет заметки указанного типа из этого XObject. (Унаследовано от XObject) |
| RemoveAttributes() |
Удаляет атрибуты этого XElementпараметра. |
| RemoveNodes() |
Удаляет дочерние узлы из этого документа или элемента. (Унаследовано от XContainer) |
| ReplaceAll(Object) |
Заменяет дочерние узлы и атрибуты этого элемента указанным содержимым. |
| ReplaceAll(Object[]) |
Заменяет дочерние узлы и атрибуты этого элемента указанным содержимым. |
| ReplaceAttributes(Object) |
Заменяет атрибуты этого элемента указанным содержимым. |
| ReplaceAttributes(Object[]) |
Заменяет атрибуты этого элемента указанным содержимым. |
| ReplaceNodes(Object) |
Заменяет дочерние узлы этого документа или элемента указанным содержимым. (Унаследовано от XContainer) |
| ReplaceNodes(Object[]) |
Заменяет дочерние узлы этого документа или элемента указанным содержимым. (Унаследовано от XContainer) |
| ReplaceWith(Object) |
Заменяет этот узел указанным содержимым. (Унаследовано от XNode) |
| ReplaceWith(Object[]) |
Заменяет этот узел указанным содержимым. (Унаследовано от XNode) |
| Save(Stream, SaveOptions) |
Выводит это XElement в указанный Streamпараметр, при необходимости указывая поведение форматирования. |
| Save(Stream) | |
| Save(String, SaveOptions) |
Сериализуйте этот элемент в файл, при необходимости отключая форматирование. |
| Save(String) |
Сериализуйте этот элемент в файл. |
| Save(TextWriter, SaveOptions) |
Сериализуйте этот элемент в значение TextWriter, необязательно отключающее форматирование. |
| Save(TextWriter) |
Сериализуйте этот элемент в объект TextWriter. |
| Save(XmlWriter) |
Сериализуйте этот элемент в объект XmlWriter. |
| SaveAsync(Stream, SaveOptions, CancellationToken) | |
| SaveAsync(TextWriter, SaveOptions, CancellationToken) |
Асинхронно выводит это XElement в объект TextWriter. |
| SaveAsync(XmlWriter, CancellationToken) | |
| SetAttributeValue(XName, Object) |
Задает значение атрибута, добавляет атрибут или удаляет атрибут. |
| SetElementValue(XName, Object) |
Задает значение дочернего элемента, добавляет дочерний элемент или удаляет дочерний элемент. |
| SetValue(Object) |
Задает значение этого элемента. |
| ToString() |
Возвращает отступ xml для этого узла. (Унаследовано от XNode) |
| ToString(SaveOptions) |
Возвращает XML-код для этого узла, при необходимости отключая форматирование. (Унаследовано от XNode) |
| WriteTo(XmlWriter) |
Напишите этот элемент в объект XmlWriter. |
| WriteToAsync(XmlWriter, CancellationToken) |
Асинхронно записывает это XElement в указанный модуль записи. |
Операторы
События
| Имя | Описание |
|---|---|
| Changed |
Вызывается, когда это XObject или любой из его потомков изменились. (Унаследовано от XObject) |
| Changing |
Вызывается, когда это XObject или любой из его потомков собираются изменить. (Унаследовано от XObject) |
Явные реализации интерфейса
| Имя | Описание |
|---|---|
| IXmlLineInfo.HasLineInfo() |
Возвращает значение, указывающее, имеет ли эта XObject строка сведения. (Унаследовано от XObject) |
| IXmlLineInfo.LineNumber |
Возвращает номер строки, сообщаемой базовой XmlReader строкой для этого XObject. (Унаследовано от XObject) |
| IXmlLineInfo.LinePosition |
Возвращает позицию строки, которая отображается в базовом XmlReader отчете для этого XObject. (Унаследовано от XObject) |
| IXmlSerializable.GetSchema() |
Возвращает определение схемы XML, описывающее XML-представление этого объекта. |
| IXmlSerializable.ReadXml(XmlReader) |
Создает объект из его XML-представления. |
| IXmlSerializable.WriteXml(XmlWriter) |
Преобразует объект в его XML-представление. |
Методы расширения
| Имя | Описание |
|---|---|
| CreateNavigator(XNode, XmlNameTable) |
XPathNavigator Создает объект для XNode. Это XmlNameTable обеспечивает более эффективную обработку выражений XPath. |
| CreateNavigator(XNode) |
XPathNavigator Создает объект для XNode. |
| GetSchemaInfo(XElement) |
Возвращает набор сведений после проверки схемы (PSVI) проверенного элемента. |
| ToXPathNavigable(XNode) |
Возвращает метод доступа, позволяющий перемещаться и изменять указанный объект XNode. |
| Validate(XElement, XmlSchemaObject, XmlSchemaSet, ValidationEventHandler, Boolean) |
Проверяет соответствие XElement вложенного дерева указанному XmlSchemaObject и XmlSchemaSetнеобязательному заполнению XML-дерева набором сведений после проверки схемы (PSVI). |
| Validate(XElement, XmlSchemaObject, XmlSchemaSet, ValidationEventHandler) |
Этот метод проверяет соответствие XElement вложенного дерева указанному и заданному XmlSchemaObjectXmlSchemaSet. |
| XPathEvaluate(XNode, String, IXmlNamespaceResolver) |
Вычисляет выражение XPath, разрешая префиксы пространства имен с помощью указанного.IXmlNamespaceResolver |
| XPathEvaluate(XNode, String) |
Вычисляет выражение XPath. |
| XPathSelectElement(XNode, String, IXmlNamespaceResolver) |
XElement Выбирает выражение XPath, разрешая префиксы пространства имен с помощью указанного.IXmlNamespaceResolver |
| XPathSelectElement(XNode, String) |
XElement Выбирает выражение XPath. |
| XPathSelectElements(XNode, String, IXmlNamespaceResolver) |
Выбирает коллекцию элементов с помощью выражения XPath, разрешая префиксы пространства имен с помощью указанного.IXmlNamespaceResolver |
| XPathSelectElements(XNode, String) |
Выбирает коллекцию элементов с помощью выражения XPath. |