Istruzione Imports (tipo e spazio dei nomi .NET)
Consente di fare riferimento ai nomi dei tipi senza la qualificazione dello spazio dei nomi.
Imports [ aliasname = ] namespace
-or-
Imports [ aliasname = ] namespace.element
Parti
Termine |
Definizione |
aliasname |
Parametro facoltativo. Alias di importazione o nome per mezzo del quali il codice può fare riferimento a namespace invece di utilizzare la stringa di qualificazione completa. Per informazioni, vedere Nomi di elementi dichiarati (Visual Basic). |
namespace |
Obbligatorio. Nome completo dello spazio dei nomi da importare. Può essere una stringa di spazi dei nomi annidata a qualsiasi livello. |
element |
Parametro facoltativo. Nome di un elemento di programmazione dichiarato nello spazio dei nomi. Può essere un qualsiasi elemento contenitore. |
Note
L'istruzione Imports consente di fare riferimento ai tipi contenuti in uno spazio dei nomi dato in modo diretto.
È possibile fornire un singolo nome dello spazio dei nomi o una stringa di spazi dei nomi annidati. Ciascuno spazio dei nomi annidato è separato dallo spazio dei nomi successivo di livello più alto da un punto (.) come illustrato nell'esempio riportato di seguito.
Imports System.Collections.Generic
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 qualsiasi dichiarazione di elemento di programmazione, come ad esempio le istruzioni Module o Class.
La parola chiave Imports può essere utilizzata solo a livello di file. In altri termini, il contesto della dichiarazione per l'importazione deve essere un file di origine, e non uno spazio dei nomi, una classe, una struttura, un modulo, un'interfaccia, una routine o un blocco.
Tenere presente che l'istruzione Imports non rende disponibili per il progetto elementi di altri progetti e assembly. In altre parole, l'importazione non è un'alternativa all'impostazione di un riferimento. Essa elimina semplicemente la necessità di qualificare i nomi che sono già disponibili per il progetto. Per ulteriori informazioni, vedere "Containing Elements" in Riferimenti a elementi dichiarati (Visual Basic).
Nota
È possibile definire istruzioni Imports implicite utilizzando la Pagina Riferimenti, Progettazione progetti (Visual Basic).Per ulteriori informazioni, vedere Procedura: aggiungere o rimuovere spazi dei nomi importati (Visual Basic).
Alias di importazione
Un alias di importazione consente di definire l'alias per uno spazio dei nomi o un tipo. Gli alias di importazione si rivelano utili quando è necessario utilizzare elementi omonimi dichiarati in uno o più spazi dei nomi. Per ulteriori informazioni e un esempio, vedere "Qualificare un nome di un elemento" in Riferimenti a elementi dichiarati (Visual Basic).
Evitare di dichiarare un membro a livello di modulo con la stesso nome di aliasname. In caso contrario, il compilatore di Visual Basic utilizza il aliasname soltanto per il membro dichiatato e non lo riconosce più come alias di importazione.
Anche se la sintassi utilizzata per dichiarare un alias di importazione è uguale a quella utilizzata per importare un prefisso dello spazio dei nomi XML, i risultati sono diversi. Un alias di importazione può essere utilizzato come un'espressione nel codice, mentre un prefisso dello spazio dei nomi XML può essere utilizzato solo in valori letterali XML o proprietà axis XML come prefisso di un nome di attributo o elemento qualificato.
Nomi di elemento
Se si fornisce un parametro element, esso deve rappresentare un elemento contenitore, ovvero un elemento di programmazione che possa contenere altri elementi. Gli elementi contenitore comprendono classi, strutture, moduli, interfacce ed enumerazioni.
L'ambito degli elementi resi disponibili da un'istruzione Imports è legato al fatto che venga o non venga specificato element. Se si specifica soltanto il parametro namespace, tutti i membri con nome univoco di quello spazio dei nomi e i membri di elementi contenitore inclusi in quello spazio dei nomi, sono disponibili senza qualificazione. Se si specifica sia namespace che element, saranno disponibili senza qualificazione soltanto i membri di quell'elemento.
Esempio
Nell'esempio seguente vengono restituite tutte le cartelle nella directory C:\ tramite la classe DirectoryInfo.
Nel codice non sono presenti istruzioni Imports all'inizio del file. Pertanto, i riferimenti DirectoryInfo, StringBuilder e CrLf sono completi degli spazi dei nomi.
Public Function GetFolders() As String
' Create a new StringBuilder, which is used
' to efficiently build strings.
Dim sb As New System.Text.StringBuilder
Dim dInfo As New System.IO.DirectoryInfo("c:\")
' Obtain an array of directories, and iterate through
' the array.
For Each dir As System.IO.DirectoryInfo In dInfo.GetDirectories()
sb.Append(dir.Name)
sb.Append(Microsoft.VisualBasic.ControlChars.CrLf)
Next
Return sb.ToString
End Function
Nell'esempio seguente sono incluse le istruzioni Imports per gli spazi dei nomi a cui si fa riferimento. Pertanto, i tipi non devono essere completi degli spazi dei nomi.
' Place Imports statements at the top of your program.
Imports System.Text
Imports System.IO
Imports Microsoft.VisualBasic.ControlChars
Public Function GetFolders() As String
Dim sb As New StringBuilder
Dim dInfo As New DirectoryInfo("c:\")
For Each dir As DirectoryInfo In dInfo.GetDirectories()
sb.Append(dir.Name)
sb.Append(CrLf)
Next
Return sb.ToString
End Function
Nell'esempio seguente sono incluse le istruzioni Imports tramite le quali vengono creati gli alias per gli spazi dei nomi a cui si fa riferimento. I tipi vengono qualificati con gli alias.
Imports systxt = System.Text
Imports sysio = System.IO
Imports ch = Microsoft.VisualBasic.ControlChars
Public Function GetFolders() As String
Dim sb As New systxt.StringBuilder
Dim dInfo As New sysio.DirectoryInfo("c:\")
For Each dir As sysio.DirectoryInfo In dInfo.GetDirectories()
sb.Append(dir.Name)
sb.Append(ch.CrLf)
Next
Return sb.ToString
End Function
Nell'esempio seguente sono incluse le istruzioni Imports tramite le quali vengono creati gli alias per i tipi a cui si fa riferimento. Gli alias vengono utilizzati per specificare i tipi.
Imports strbld = System.Text.StringBuilder
Imports dirinf = System.IO.DirectoryInfo
Public Function GetFolders() As String
Dim sb As New strbld
Dim dInfo As New dirinf("c:\")
For Each dir As dirinf In dInfo.GetDirectories()
sb.Append(dir.Name)
sb.Append(ControlChars.CrLf)
Next
Return sb.ToString
End Function
Vedere anche
Riferimenti
Istruzione Imports (spazio dei nomi XML)
Concetti
Spazi dei nomi in Visual Basic