Condividi tramite


Istruzione Imports (spazio dei nomi XML)

Aggiornamento: novembre 2007

Importa i prefissi dello spazio dei nomi XML per l'utilizzo in valori letterali XML e proprietà axis XML.

Imports <xmlns:xmlNamespacePrefix = "xmlNamespaceName">

Parti

  • xmlNamespacePrefix
    Facoltativo. Stringa tramite cui gli elementi e gli attributi XML possono fare riferimento a xmlNamespaceName. Se non viene fornito alcun xmlNamespacePrefix, lo spazio dei nomi XML importato è quello predefinito. Deve essere un identificatore XML valido. Per ulteriori informazioni, vedere Nomi dichiarati di elementi e attributi XML.

  • xmlNamespaceName
    Obbligatorio. Stringa che identifica lo spazio dei nomi XML importato.

Note

È possibile utilizzare l'istruzione Imports per definire spazi dei nomi XML globali che possono venire utilizzati con valori letterali XML e proprietà axis XML oppure come parametri passati all'operatore GetXmlNamespace. (Per informazioni sull'utilizzo dell'istruzione Imports per importare un alias che può essere usato quando si utilizzano i nomi di tipo nel codice, vedere Istruzione Imports (tipo e spazio dei nomi .NET)). La sintassi per dichiarare uno spazio dei nomi XML utilizzando 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 vuole creare ripetutamente elementi XML provenienti 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 utilizzarlo quando si creano valori letterali di un elemento XML e quando si accede alle proprietà axis XML. Per ulteriori informazioni, vedere Valore letterale Element XML e Proprietà Axis 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 di un elemento XML o proprietà axis dell'attributo XML che non specificano in modo esplicito uno spazio dei nomi. Viene utilizzato lo spazio dei nomi predefinito anche quando lo spazio dei nomi specificato è vuoto (cioè, ). Lo spazio dei nomi XML predefinito non viene applicato agli attributi XML nei valori letterali XML o alle proprietà axis dell'attributo XML che non hanno uno spazio dei nomi.

Gli spazi dei nomi XML locali, cioè gli spazi dei nomi XML definiti in un valore letterale XML, hanno la precedenza rispetto agli spazi dei nomi XML definiti globali dall'istruzione Imports. Gli spazi dei nomi XML definiti dall'istruzione Imports hanno la precedenza rispetto agli 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 lo stesse regole di ambito e di definizione 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. Questo vale sia per i file di codice che per gli spazi dei nomi importati a livello di progetto. Per ulteriori 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 indefinito di istruzioni Imports. Queste devono essere specificate dopo le dichiarazioni di opzione, come l'istruzione Option Strict, e devono precedere le dichiarazioni degli elementio di programmazione, come l'istruzione Module o Class.

Esempio

Nell'esempio riportato di seguito viene illustrato come importare uno spazio dei nomi XML predefinito e uno spazio dei nomi XML identificato con il prefisso ns. Vengono quindi creati i valori letterali XML che utilizzano 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

Verrà visualizzato il seguente testo:

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

Nell'esempio di codice riportato di seguito viene importato il prefisso ns dello spazio dei nomi. Viene quindi creato un valore letterale XML che utilizza il prefisso dello spazio dei nomi e visualizza il formato 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

Verrà visualizzato il seguente testo:

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

Il compilatore converte il prefisso dello spazio dei nomi XML da prefisso globale a una definizione del prefisso locale.

Nell'esempio di codice riportato di seguito viene importato il prefisso ns dello spazio dei nomi. Il prefisso dello spazio dei nomi viene quindi utilizzato 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

Verrà visualizzato il seguente testo:

Patrick Hines

Vedere anche

Concetti

Nomi dichiarati di elementi e attributi XML

Riferimenti

Valore letterale Element XML

Operatore GetXmlNamespace

Altre risorse

Proprietà Axis XML