Свойство дочерней оси XML (Visual Basic)
Предоставляет доступ к дочерним элементам одного из следующих: объекта 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. Используйте XML-свойство Value
для доступа к значению первого дочернего узла в возвращаемой коллекции. Дополнительные сведения см. в разделе "Свойство значения XML".
Компилятор Visual Basic преобразует свойства дочерней оси в вызовы Elements метода.
Пространства имен XML
Имя в свойстве дочерней оси может использовать только префиксы пространства имен XML, объявленные глобально с помощью метода Imports
. В нем нельзя использовать префиксы пространства имен XML, объявленные локально с помощью литералов XML-элемента. Дополнительные сведения см. в разделе "Импорт" (пространство имен XML).
Пример 1
В следующем примере показано, как получить доступ к дочерним узлам 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
Пример 2
В следующем примере показано, как получить доступ к дочерним узлам с именем 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
Пример 3
В следующем примере 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