Propriedade Axis de atributo XML

Fornece acesso ao valor de um atributo para um objeto XElement ou o primeiro elemento em uma coleção de objetos XElement.

object.@attribute
-or-
object.@<attribute>

Partes

  • object
    Obrigatório.Um objeto XElement ou uma coleção de objetos XElement.

  • .@
    Obrigatório.Indica o início de uma propriedade do eixo de atributo.

  • <
    Opcional.Indica o início do nome do atributo attribute quando não um identificador válido no Visual Basic.

  • attribute
    Obrigatório.Nome do atributo para acessar, do formulário [prefix:] name.

    Parte

    Descrição

    prefix

    Opcional.Prefixo para namespace XML para o atributo.Deve ser um namespace para XML global definido com uma declaração Imports.

    name

    Obrigatório.Nome do Atributo local.SeeNomes de elementos XML declarado e atributos.

  • >
    Opcional.Indica o início do nome do atributo attribute quando não um identificador válido no Visual Basic.

Valor de retorno

Uma sequência de caracteres que contém o valor do atributo.

Comentários

Você pode usar um propriedade do eixo de atributo XML para acessar o valor de um atributo pelo nome de um objeto XElement ou o primeiro elemento em uma coleção de objetos XElement.Você pode recuperar um valor de atributo pelo nome, ou adicionar um novo atributo a um elemento, especificando um novo nome precedido de @ identificador.

Quando você fazer referência a um atributo XML usando o @ identificador, o valor de atributo é retornado como uma sequência de caracteres e você não será necessário especificar a propriedade Value explicitamente.

As regras de nomeação para atributos XML diferem as regras de nomes de Visual Basicidentificadores. Para acesso um atributo XML que tem um nome não é um identificador válido do Visual Basic, colocar o nome entre colchetes angulares (< e >).

Namespaces XML

O nome em um propriedade do eixo de atributo pode usar somente prefixos namespace para XML declarados usando a instrução Imports globalmente.Não é possível usar prefixos namespace para XML declarados localmente em literais de elemento XML.Para obter mais informações, consulte Instrução Imports (Namespace XML).

Exemplo

O exemplo a seguir mostra como obter os valores dos atributos XML chamados type de uma coleção de elementos que são denominados phone XML.

' Topic: XML Attribute Axis Property
Dim phones As XElement = _
    <phones>
        <phone type="home">206-555-0144</phone>
        <phone type="work">425-555-0145</phone>
    </phones>

Dim phoneTypes As XElement = _
  <phoneTypes>
      <%= From phone In phones.<phone> _
          Select <type><%= phone.@type %></type> _
      %>
  </phoneTypes>

Console.WriteLine(phoneTypes)

Esse código exibe o texto a seguir:

<phoneTypes>

<type>home</type>

<type>work</type>

</phoneTypes>

O exemplo a seguir mostra como criar atributos para um elemento XML tanto declarativamente, como parte do XML e dinamicamente adicionando um atributo a uma instância de um objeto XElement.O atributo type declarativamente é criado e o owne r atributo é criado dinamicamente.

Dim phone2 As XElement = <phone type="home">206-555-0144</phone>
phone2.@owner = "Harris, Phyllis"

Console.WriteLine(phone2)

Esse código exibe o texto a seguir:

<phone type="home" owner="Harris, Phyllis">206-555-0144</phone>

O exemplo a seguir usa a sintaxe colchete angular para obter o valor da atributo XML chamado number-type,que é Não um identificador válido no Visual Basic.

Dim phone As XElement = _
     <phone number-type=" work">425-555-0145</phone>

 Console.WriteLine("Phone type: " & phone.@<number-type>)

Esse código exibe o texto a seguir:

Phone type: work

O exemplo a seguir declara ns como um prefixo de namespace para XML.Ele usa o prefixo de namespace, em seguida, para criar um XML literal e acessar a primeira nó filho com o nome qualificado "ns:name" .

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

Class TestClass3

    Shared Sub TestPrefix()
        Dim phone = _
            <ns:phone ns:type="home">206-555-0144</ns:phone>

        Console.WriteLine("Phone type: " & phone.@ns:type)
    End Sub

End Class

Esse código exibe o texto a seguir:

Phone type: home

Consulte também

Conceitos

Nomes de elementos XML declarado e atributos

Referência

XElement

Outros recursos

Propriedades do eixo XML

Literais XML

Criando XML em Visual Basic