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 Создает параметр с параметрами, указанными параметром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, 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)

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

Выводит это XElement в указанный Streamобъект.

Save(String, SaveOptions)

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

Save(String)

Сериализуйте этот элемент в файл.

Save(TextWriter, SaveOptions)

Сериализуйте этот элемент в значение TextWriter, необязательно отключающее форматирование.

Save(TextWriter)

Сериализуйте этот элемент в объект 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 в указанный модуль записи.

Операторы

Имя Описание
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-представление.

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

Имя Описание
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.

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

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