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


Свойство дочерней оси XML

Обновлен: Ноябрь 2007

Предоставляет доступ к дочерним элементам одного из следующих объектов: объект XElement, объект XDocument, коллекция объектов XElement или коллекция объектов XDocument.

object.<child>

Компоненты

  • object
    Обязательный параметр. Объект XElement, объект XDocument, коллекция объектов XElement или коллекция объектов XDocument.

  • .<
    Обязательный параметр. Обозначает начало свойства дочерней оси.

  • child
    Обязательный параметр. Имя дочерних узлов для доступа, в форме [prefix:]name.

    Компонент

    Описание

    prefix

    Необязательный атрибут. Префикс пространства имен XML для дочернего узла. Должно быть глобальным пространством имен XML, определенным при помощи оператора Imports.

    name

    Обязательный параметр. Локальное имя дочернего узла. См. Имена объявляемых элементов и атрибутов XML.

  • >
    Обязательный параметр. Обозначает конец свойства дочерней оси.

Возвращаемое значение

Коллекция объектов XElement.

Заметки

Можно использовать свойство оси дочернего XML для получения доступа к дочернему узлу по имени из объекта XElement или XDocument или из коллекции объектов XElement или XDocument. Для доступа к значению первого дочернего узла в возвращаемой коллекции используется свойство Value XML. Дополнительные сведения см. в разделе Свойство значения XML.

Компилятор Visual Basic преобразует свойства дочерней оси в вызовы метода Elements.

Пространства имен XML

Имя в свойстве дочерней оси может использовать только префиксы пространства имен XML, объявленные глобально помощью инструкции Imports. Оно не может использовать префиксы пространства имен XML, объявленные локально с помощью литералов XML-элемента. Дополнительные сведения см. в разделе Оператор Imports (пространство имен XML).

Пример

В следующем примере показано, как получить доступ к дочернему узлу с именем phone из объекта contact.

Dim contact As XElement = _
    <contact>
        <name>Patrick Hines</name>
        <phone type="home">206-555-0144</phone>
        <phone type="work">425-555-0145</phone>
    </contact>

Dim homePhone = From hp In contact.<phone> _
                Where contact.<phone>.@type = "home" _
                Select hp

Console.WriteLine("Home Phone = {0}", homePhone(0).Value)

Этот код отображает следующий текст:

Home Phone = 206-555-0144

В следующем примере показано, как получить доступ к дочернему узлу с именем phone из коллекции, возвращенной свойством дочерней оси contact объекта contacts.

Dim contacts As XElement = _
    <contacts>
        <contact>
            <name>Patrick Hines</name>
            <phone type="home">206-555-0144</phone>
        </contact>
        <contact>
            <name>Lance Tucker</name>
            <phone type="work">425-555-0145</phone>
        </contact>
    </contacts>

Dim homePhone = From contact In contacts.<contact> _
                Where contact.<phone>.@type = "home" _
                Select contact.<phone>

Console.WriteLine("Home Phone = {0}", homePhone(0).Value)

Этот код отображает следующий текст:

Home Phone = 206-555-0144

В следующем примере объявляется ns как префикс пространства имен XML. Затем используется префикс пространства имен для создания XML-литерала и доступа к первому дочернему узлу, имеющему полное имя ns:name.

Imports <xmlns:ns = "http://SomeNamespace"> 

Class TestClass4

    Shared Sub TestPrefix()
        Dim contact = <ns:contact>
                        <ns:name>Patrick Hines</ns:name>
                      </ns:contact>
        Console.WriteLine(contact.<ns:name>.Value)
    End Sub

End Class

Этот код отображает следующий текст:

Patrick Hines

См. также

Основные понятия

Имена объявляемых элементов и атрибутов XML

Ссылки

XElement

Другие ресурсы

Свойства оси XML

XML-литералы

Создание XML в Visual Basic