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разделе Допустимое содержимое объектов XElement и XDocument.
XElement наследуется от XContainer, который является производным от XNode.
Некоторые XElement методы можно использовать из XAML. Дополнительные сведения см. в разделе Динамические свойства LINQ to XML.
Конструкторы
XElement(XElement) |
Инициализирует новый экземпляр класса XElement из другого объекта XElement. |
XElement(XName) |
Инициализирует новый экземпляр класса XElement с указанным именем. |
XElement(XName, Object) |
Инициализирует новый экземпляр класса XElement с указанными именем и содержимым. |
XElement(XName, Object[]) |
Инициализирует новый экземпляр класса 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) |
Создает новый экземпляр XElement с помощью указанного потока. |
Load(Stream, LoadOptions) |
Создает новый экземплярXElement, используя указанный поток и при необходимости оставляя пустое пространство, задавая базовый URI и сохраняя сведения о строках. |
Load(String) |
Загружает XElement из файла. |
Load(String, LoadOptions) |
Загружает XElement из файла, по требованию сохраняет пустое пространство, задает базовый URI и сведения о строке. |
Load(TextReader) |
Загружает XElement из TextReader. |
Load(TextReader, LoadOptions) |
Загружает элемент XElement из объекта TextReader, при необходимости сохраняя пробелы и сведения о строке. |
Load(XmlReader) | |
Load(XmlReader, LoadOptions) |
Загружает элемент XElement из объекта XmlReader, при необходимости оставляя пустое пространство, задавая базовый URI и сохраняя сведения о строке. |
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) |
Загрузка XElement из строки, содержащей XML. |
Parse(String, LoadOptions) |
Загрузка элемента 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) | |
Save(Stream, SaveOptions) |
Выводит данный элемент XElement в указанный поток Stream, при необходимости задавая поведение форматирования. |
Save(String) |
Сериализовать этот элемент в файл. |
Save(String, SaveOptions) |
Сериализовать этот элемент в файл (с возможным отключением форматирования). |
Save(TextWriter) |
Сериализация этого элемента в TextWriter. |
Save(TextWriter, SaveOptions) |
Сериализация этого элемента в 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 в указанный модуль записи. |
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) |
IXmlSerializable.GetSchema() |
Возвращает определение схемы XML, которое описывает представление XML этого объекта. |
IXmlSerializable.ReadXml(XmlReader) |
Создает объект на основе его XML-представления. |
IXmlSerializable.WriteXml(XmlWriter) |
Преобразует объект в его XML-представление. |
Методы расширения
GetSchemaInfo(XElement) |
Получает набор сведений после проверки схемы (PSVI) для проверенного элемента. |
Validate(XElement, XmlSchemaObject, XmlSchemaSet, ValidationEventHandler) |
Этот метод проверяет поддерево XElement на соответствие указанным XmlSchemaObject и XmlSchemaSet. |
Validate(XElement, XmlSchemaObject, XmlSchemaSet, ValidationEventHandler, Boolean) |
Проверяет поддерево XElement на соответствие указанным XmlSchemaObject и 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 и редактировать его. |