Importinstruktor (XML-namnområde)
Importerar XML-namnområdesprefix för användning i XML-literaler och XML-axelegenskaper.
Syntax
Imports <xmlns:xmlNamespacePrefix = "xmlNamespaceName">
Delar
xmlNamespacePrefix
Valfritt. Strängen med vilken XML-element och -attribut kan referera till xmlNamespaceName
. Om inget xmlNamespacePrefix
anges är det importerade XML-namnområdet standard-XML-namnområdet. Måste vara en giltig XML-identifierare. Mer information finns i Namn på deklarerade XML-element och attribut.
xmlNamespaceName
Obligatoriska. Strängen som identifierar XML-namnområdet som importeras.
Kommentarer
Du kan använda -instruktionen Imports
för att definiera globala XML-namnområden som du kan använda med XML-literaler och XML-axelegenskaper, eller som parametrar som skickas till operatorn GetXmlNamespace
. (Information om hur du använder -instruktionen Imports
för att importera ett alias som kan användas där typnamn används i koden finns i Importuttryck (.NET-namnområde och typ).) Syntaxen för att deklarera ett XML-namnområde med hjälp av -instruktionen Imports
är identisk med syntaxen som används i XML. Därför kan du kopiera en namnområdesdeklaration från en XML-fil och använda den i en Imports
-instruktion.
XML-namnområdesprefix är användbara när du upprepade gånger vill skapa XML-element som kommer från samma namnområde. XML-namnområdesprefixet som deklareras med -instruktionen Imports
är globalt i den meningen att det är tillgängligt för all kod i filen. Du kan använda den när du skapar XML-elementliteraler och när du kommer åt XML-axelegenskaper. Mer information finns i EGENSKAPER för XML-elementliteral och XML-axel.
Om du definierar ett globalt XML-namnområde utan ett namnområdesprefix (till exempel Imports <xmlns="http://SomeNameSpace>"
), anses det namnområdet vara standard-XML-namnområdet. Standard-XML-namnområdet används för xml-elementliteraler eller XML-attributaxelegenskaper som inte uttryckligen anger ett namnområde. Standardnamnområdet används också om det angivna namnområdet är det tomma namnområdet (d.s.a xmlns=""
. ). Xml-standardnamnområdet gäller inte för XML-attribut i XML-literaler eller xml-attributaxelegenskaper som inte har något namnområde.
XML-namnområden som definieras i en XML-literal, som kallas lokala XML-namnområden, har företräde framför XML-namnområden som definieras av -instruktionen Imports
som globala. XML-namnområden som definieras av -instruktionen Imports
har företräde framför XML-namnområden som importerats för ett Visual Basic-projekt. Om en XML-literal definierar ett XML-namnområde gäller inte det lokala namnområdet för inbäddade uttryck.
Globala XML-namnområden följer samma omfångs- och definitionsregler som .NET Framework-namnområden. Därför kan du inkludera en Imports
instruktion för att definiera ett globalt XML-namnområde var som helst där du kan importera ett .NET Framework-namnområde. Detta omfattar både kodfiler och importerade namnområden på projektnivå. Information om importerade namnområden på projektnivå finns i Referenssida, Projektdesigner (Visual Basic).
Varje källfil kan innehålla valfritt antal Imports
instruktioner. Dessa måste följa alternativdeklarationer, till exempel -instruktionen Option Strict
, och de måste föregå deklarationer av programmeringselement, till exempel Module
eller Class
-instruktioner.
Exempel 1
I följande exempel importeras ett XML-standardnamnområde och ett XML-namnområde som identifieras med prefixet ns
. Sedan skapas XML-literaler som använder båda namnrymderna.
' Place Imports statements at the top of your program.
Imports <xmlns="http://DefaultNamespace">
Imports <xmlns:ns="http://NewNamespace">
Module Module1
Sub Main()
' Create element by using the default global XML namespace.
Dim inner = <innerElement/>
' Create element by using both the default global XML namespace
' and the namespace identified with the "ns" prefix.
Dim outer = <ns:outer>
<ns:innerElement></ns:innerElement>
<siblingElement></siblingElement>
<%= inner %>
</ns:outer>
' Display element to see its final form.
Console.WriteLine(outer)
End Sub
End Module
Den här koden visar följande text:
<ns:outer xmlns="http://DefaultNamespace"
xmlns:ns="http://NewNamespace">
<ns:innerElement></ns:innerElement>
<siblingElement></siblingElement>
<innerElement />
</ns:outer>
Exempel 2
I följande exempel importeras XML-namnområdesprefixet ns
. Den skapar sedan en XML-literal som använder namnområdesprefixet och visar elementets slutliga formulär.
' Place Imports statements at the top of your program.
Imports <xmlns:ns="http://SomeNamespace">
Class TestClass1
Shared Sub TestPrefix()
' Create test using a global XML namespace prefix.
Dim inner2 = <ns:inner2/>
Dim test =
<ns:outer>
<ns:middle xmlns:ns="http://NewNamespace">
<ns:inner1/>
<%= inner2 %>
</ns:middle>
</ns:outer>
' Display test to see its final form.
Console.WriteLine(test)
End Sub
End Class
Den här koden visar följande text:
<ns:outer xmlns:ns="http://SomeNamespace">
<ns:middle xmlns:ns="http://NewNamespace">
<ns:inner1 />
<inner2 xmlns="http://SomeNamespace" />
</ns:middle>
</ns:outer>
Observera att kompilatorn konverterade XML-namnområdesprefixet från ett globalt prefix till en lokal prefixdefinition.
Exempel 3
I följande exempel importeras XML-namnområdesprefixet 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 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
Den här koden visar följande text:
Patrick Hines