Istruzione Imports (spazio dei nomi XML)

Importa i prefissi dello spazio dei nomi XML da utilizzare nei valori letterali XML e nelle proprietà dell'asse XML.

Sintassi

Imports <xmlns:xmlNamespacePrefix = "xmlNamespaceName">

Parti

xmlNamespacePrefix
Facoltativo. Stringa in base alla quale gli elementi e gli attributi XML possono fare riferimento a xmlNamespaceName. Se non viene fornito alcun xmlNamespacePrefix, lo spazio dei nomi XML importato è lo spazio dei nomi XML predefinito. Deve essere un identificatore XML valido. Per altre informazioni, vedere Nomi di elementi e attributi XML dichiarati.

xmlNamespaceName
Obbligatorio. Stringa che identifica lo spazio dei nomi XML da importare.

Osservazioni:

È possibile utilizzare l'istruzione Imports per definire spazi dei nomi XML globali che è possibile utilizzare con valori letterali XML e proprietà dell'asse XML oppure come parametri passati all'operatore GetXmlNamespace. Per informazioni sull'uso dell'istruzione Imports per importare un alias che può essere usato in cui vengono usati i nomi dei tipi nel codice, vedere Istruzione Imports (spazio dei nomi e tipo.NET). La sintassi per dichiarare uno spazio dei nomi XML tramite l'istruzione Imports è identica alla sintassi utilizzata in XML. Pertanto, è possibile copiare una dichiarazione dello spazio dei nomi da un file XML e usarla in un'istruzione Imports.

I prefissi dello spazio dei nomi XML sono utili quando si desidera creare ripetutamente elementi XML che provengono dallo stesso spazio dei nomi. Il prefisso dello spazio dei nomi XML dichiarato con l'istruzione Imports è globale nel senso che è disponibile per tutto il codice nel file. È possibile usarlo quando si creano valori letterali elemento XML e quando si accede alle proprietà dell'asse XML. Per altre informazioni, vedere valore letterale elemento XML e proprietà dell'asse XML.

Se si definisce uno spazio dei nomi XML globale senza un prefisso dello spazio dei nomi (ad esempio, Imports <xmlns="http://SomeNameSpace>"), tale spazio dei nomi viene considerato lo spazio dei nomi XML predefinito. Lo spazio dei nomi XML predefinito viene utilizzato per qualsiasi valore letterale elemento XML o proprietà dell'asse degli attributi XML che non specificano in modo esplicito uno spazio dei nomi. Lo spazio dei nomi predefinito viene usato anche se lo spazio dei nomi specificato è lo spazio dei nomi vuoto, ovvero xmlns="". Lo spazio dei nomi XML predefinito non si applica agli attributi XML nei valori letterali XML o alle proprietà dell'asse degli attributi XML che non dispongono di uno spazio dei nomi.

Gli spazi dei nomi XML definiti in un valore letterale XML, denominati spazi dei nomi XML locali, hanno la precedenza sugli spazi dei nomi XML definiti dall'istruzione Imports come globale. Gli spazi dei nomi XML definiti dall'istruzione Imports hanno la precedenza sugli spazi dei nomi XML importati per un progetto Visual Basic. Se un valore letterale XML definisce uno spazio dei nomi XML, tale spazio dei nomi locale non si applica alle espressioni incorporate.

Gli spazi dei nomi XML globali seguono le stesse regole di definizione e ambito degli spazi dei nomi .NET Framework. Di conseguenza, è possibile includere un'istruzione Imports per definire uno spazio dei nomi XML globale ovunque sia possibile importare uno spazio dei nomi .NET Framework. Sono inclusi sia i file di codice che gli spazi dei nomi importati a livello di progetto. Per informazioni sugli spazi dei nomi importati a livello di progetto, vedere Pagina Riferimenti, Progettazione progetti (Visual Basic).

Ogni file di origine può contenere un numero qualsiasi di istruzioni Imports. Queste devono seguire dichiarazioni di opzione, ad esempio l'istruzione Option Strict, e devono precedere le dichiarazioni degli elementi di programmazione, ad esempio Module o Class.

Esempio 1

Nell'esempio seguente viene importato uno spazio dei nomi XML predefinito e uno spazio dei nomi XML identificato con il prefisso ns. Crea quindi valori letterali XML che usano entrambi gli spazi dei nomi.

' 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

Questo codice visualizza il testo seguente:

<ns:outer xmlns="http://DefaultNamespace"
          xmlns:ns="http://NewNamespace">
  <ns:innerElement></ns:innerElement>
  <siblingElement></siblingElement>
  <innerElement />
</ns:outer>

Esempio 2

Nell'esempio seguente viene importato il prefisso dello spazio dei nomi XML ns. Crea quindi un valore letterale XML che usa il prefisso dello spazio dei nomi e visualizza il modulo finale dell'elemento.

' 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

Questo codice visualizza il testo seguente:

<ns:outer xmlns:ns="http://SomeNamespace">
  <ns:middle xmlns:ns="http://NewNamespace">
    <ns:inner1 />
    <inner2 xmlns="http://SomeNamespace" />
  </ns:middle>
</ns:outer>

Si noti che il compilatore ha convertito il prefisso dello spazio dei nomi XML da un prefisso globale a una definizione di prefisso locale.

Esempio 3

Nell'esempio seguente viene importato il prefisso dello spazio dei nomi XML ns. Il prefisso dello spazio dei nomi viene quindi usato per creare un valore letterale XML e accedere al primo nodo figlio con il nome completo 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

Questo codice visualizza il testo seguente:

Patrick Hines

Vedi anche