Поделиться через


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 с характеристиками, заданными параметром readerOptions.

(Унаследовано от XNode)
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)

Загружает элемент XElement из объекта 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)

Выводит этот документ XElement в указанный поток 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)

Асинхронно выводит XElement в Stream.

SaveAsync(TextWriter, SaveOptions, CancellationToken)

Асинхронно выводит XElement в TextWriter.

SaveAsync(XmlWriter, CancellationToken)

Асинхронно выводит XElement в XmlWriter.

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)

Операторы

Explicit(XElement to Boolean)

Приведение значение данного элемента XElement к Boolean.

Explicit(XElement to DateTime)

Приведение значение данного элемента XElement к DateTime.

Explicit(XElement to DateTimeOffset)

Приведение значение данного элемента XAttribute к DateTimeOffset.

Explicit(XElement to Decimal)

Приведение значение данного элемента XElement к Decimal.

Explicit(XElement to Double)

Приведение значение данного элемента XElement к Double.

Explicit(XElement to Guid)

Приведение значение данного элемента XElement к Guid.

Explicit(XElement to Int32)

Приведение значения данного элемента XElement к Int32.

Explicit(XElement to Int64)

Приведение значения данного элемента XElement к Int64.

Explicit(XElement to Nullable<Boolean>)

Приведение значения данного элемента XElement к Nullable<T>Boolean.

Explicit(XElement to Nullable<DateTime>)

Приведение значения данного элемента XElement к Nullable<T>DateTime.

Explicit(XElement to Nullable<DateTimeOffset>)

Приведение значения данного элемента XElement к Nullable<T>DateTimeOffset.

Explicit(XElement to Nullable<Decimal>)

Приведение значения данного элемента XElement к Nullable<T>Decimal.

Explicit(XElement to Nullable<Double>)

Приведение значения данного элемента XElement к Nullable<T>Double.

Explicit(XElement to Nullable<Guid>)

Приведение значения данного элемента XElement к Nullable<T>Guid.

Explicit(XElement to Nullable<Int32>)

Приведение значения данного элемента XElement к Nullable<T>Int32.

Explicit(XElement to Nullable<Int64>)

Приведение значения данного элемента XElement к Nullable<T>Int64.

Explicit(XElement to Nullable<Single>)

Приведение значения данного элемента XElement к Nullable<T>Single.

Explicit(XElement to Nullable<TimeSpan>)

Приведение значения данного элемента XElement к Nullable<T>TimeSpan.

Explicit(XElement to Nullable<UInt32>)

Приведение значения данного элемента XElement к Nullable<T>UInt32.

Explicit(XElement to Nullable<UInt64>)

Приведение значения данного элемента XElement к Nullable<T>UInt64.

Explicit(XElement to Single)

Приведение значение данного элемента XElement к Single.

Explicit(XElement to String)

Приведение значение данного элемента XElement к String.

Explicit(XElement to TimeSpan)

Приведение значение данного элемента XElement к TimeSpan.

Explicit(XElement to UInt32)

Приведение значение данного элемента XElement к UInt32.

Explicit(XElement to UInt64)

Приведение значение данного элемента XElement к UInt64.

События

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 и редактировать его.

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

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