XML-attributaxelegenskap (Visual Basic)
Ger åtkomst till värdet för ett attribut för ett XElement objekt eller till det första elementet i en samling XElement objekt.
Syntax
object.@attribute
' -or-
object.@<attribute>
Delar
object
Krävs. Ett XElement objekt eller en samling XElement objekt.
.@ Krävs. Anger början på en attributaxelegenskap.
< Valfri. Anger början av namnet på attributet när attribute
inte är en giltig identifierare i Visual Basic.
attribute
Krävs. Namnet på attributet för åtkomst, för formuläret [prefix
:]name
.
Delvis | beskrivning |
---|---|
prefix |
Valfritt. XML-namnområdesprefix för attributet. Måste vara ett globalt XML-namnområde som definierats med en Imports -instruktion. |
name |
Obligatoriska. Namn på lokala attribut. Se Namn på deklarerade XML-element och attribut. |
> Valfri. Anger slutet på namnet på attributet när attribute
det inte är en giltig identifierare i Visual Basic.
Returvärde
En sträng som innehåller värdet attribute
för . Om attributnamnet inte finns Nothing
returneras.
Kommentarer
Du kan använda en XML-attributaxelegenskap för att komma åt värdet för ett attribut efter namn från ett XElement objekt eller från det första elementet i en samling XElement objekt. Du kan hämta ett attributvärde efter namn eller lägga till ett nytt attribut i ett element genom att ange ett nytt namn som föregås av @-identifieraren.
När du refererar till ett XML-attribut med hjälp av @-identifieraren returneras attributvärdet som en sträng och du behöver inte uttryckligen Value ange egenskapen.
Namngivningsreglerna för XML-attribut skiljer sig från namngivningsreglerna för Visual Basic-identifierare. Om du vill komma åt ett XML-attribut som har ett namn som inte är en giltig Visual Basic-identifierare omger du namnet inom vinkelparenteser (< och >).
XML-namnområden
Namnet i en attributaxelegenskap kan endast använda XML-namnområdesprefix som deklareras globalt med hjälp av -instruktionen Imports
. Det går inte att använda XML-namnområdesprefix som deklarerats lokalt i XML-elementliteraler. Mer information finns i Importinstruktor (XML-namnområde).
Exempel 1
I följande exempel visas hur du hämtar värdena för XML-attributen med namnet type
från en samling XML-element med namnet phone
.
' 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)
Den här koden visar följande text:
<phoneTypes>
<type>home</type>
<type>work</type>
</phoneTypes>
Exempel 2
I följande exempel visas hur du skapar attribut för ett XML-element både deklarativt, som en del av XML-koden, och dynamiskt genom att lägga till ett attribut i en instans av ett XElement objekt. Attributet type
skapas deklarativt och owner
attributet skapas dynamiskt.
Dim phone2 As XElement = <phone type="home">206-555-0144</phone>
phone2.@owner = "Harris, Phyllis"
Console.WriteLine(phone2)
Den här koden visar följande text:
<phone type="home" owner="Harris, Phyllis">206-555-0144</phone>
Exempel 3
I följande exempel används syntaxen för vinkelparentes för att hämta värdet för XML-attributet med namnet number-type
, som inte är en giltig identifierare i Visual Basic.
Dim phone As XElement =
<phone number-type=" work">425-555-0145</phone>
Console.WriteLine("Phone type: " & phone.@<number-type>)
Den här koden visar följande text:
Phone type: work
Exempel 4
I följande exempel deklareras som ett XML-namnområdesprefix ns
. Den använder sedan prefixet för namnområdet för att skapa en XML-literal och komma åt den första underordnade noden med det kvalificerade namnet "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
Den här koden visar följande text:
Phone type: home