Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
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.
< valfritt. 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.
| Del | Beskrivning |
|---|---|
prefix |
Valfritt. XML-namnområdesprefix för attributet. Måste vara ett globalt XML-namnområde som definierats med en Imports -instruktion. |
name |
Obligatoriskt. Namn på lokala attribut. Se Namn på deklarerade XML-element och attribut. |
> valfritt. 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 attributeför . Om attributnamnet inte finns Nothing returneras.
Anmärkningar
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