Megosztás a következőn keresztül:


Import utasítás (.NET-névtér és típus)

Lehetővé teszi a típusnevek névtér-minősítés nélküli hivatkozását.

Syntax

Imports [ aliasname = ] namespace
' -or-
Imports [ aliasname = ] namespace.element

Részek

Időszak Definíció
aliasname Opcionális. Egy importálási alias vagy név, amelyre a kód hivatkozhat namespace a teljes minősítési sztring helyett. Lásd: Deklarált elemnevek.
namespace Szükséges. Az importálandó névtér teljes neve. Bármely szintre beágyazott névterek sztringje lehet.
element Opcionális. A névtérben deklarált programozási elem neve. Bármilyen tárolóelem lehet.

Megjegyzések

Az Imports utasítás lehetővé teszi egy adott névtérben található típusok közvetlen hivatkozását.

Megadhat egyetlen névtérnevet vagy beágyazott névterek sztringet. Minden beágyazott névteret pont (.pont) választ el a következő magasabb szintű névtértől, ahogy az alábbi példa is szemlélteti:

Imports System.Collections.Generic

Minden forrásfájl tetszőleges számú utasítást Imports tartalmazhat. Ezeknek követniük kell minden beállítási deklarációt, például az Option Strict utasítást, és meg kell előzniük minden programozási elem deklarációját, például Module vagy Class utasítását.

Csak fájlszinten használható Imports . Ez azt jelenti, hogy az importálás deklarációs környezetének forrásfájlnak kell lennie, és nem lehet névtér, osztály, struktúra, modul, interfész, eljárás vagy blokk.

Vegye figyelembe, hogy az Imports utasítás nem teszi elérhetővé más projektek és szerelvények elemeit a projekt számára. Az importálás nem veszi át a hivatkozás beállításának helyét. Csak a projekt számára már elérhető nevek minősítésének szükségességét szünteti meg. További információ: "Elemek importálása" a deklarált elemekre mutató hivatkozásokban.

Feljegyzés

Implicit Imports utasításokat a Hivatkozások lap, a Project Tervező (Visual Basic) használatával határozhat meg. További információ : How to: Add or Remove Imported Namespaces (Visual Basic).

Aliasok importálása

Az importálási alias egy névtér vagy típus aliasát határozza meg. Az importálási aliasok akkor hasznosak, ha egy vagy több névtérben deklarált azonos nevű elemeket kell használnia. További információ és példa: "Elemnév minősítése" a Deklarált elemekre mutató hivatkozásokban.

A modul szintjén nem deklarálhat tagot ugyanazzal a névvel, mint aliasnamea . Ha igen, a Visual Basic fordító csak a deklarált taghoz használja aliasname , és már nem ismeri fel importálási aliasként.

Bár az importálási alias deklarálásához használt szintaxis hasonló az XML-névtér előtagjának importálásához, az eredmények eltérőek. Az importálási alias kifejezésként használható a kódban, míg az XML-névtér előtagja csak XML-literálokban vagy XML-tengelytulajdonságokban használható minősített elem vagy attribútumnév előtagjaként.

Elemnevek

Ha megadja element, annak egy tárolóelemet, vagyis egy olyan programozási elemet kell jelölnie, amely más elemeket is tartalmazhat. A tárolóelemek közé tartoznak az osztályok, struktúrák, modulok, interfészek és enumerálások.

Az utasítás által Imports elérhetővé tett elemek hatóköre attól függ, hogy megadja-e element. Ha csak namespaceazt adja meg, hogy a névtér minden egyedileg elnevezett tagja és a névtéren belüli tárolóelemek tagjai képesítés nélkül elérhetők. Ha mindkettőt namespace megadja, akkor elementcsak az elem tagjai érhetők el minősítés nélkül.

1. példa

Az alábbi példa a C:\ könyvtárban lévő összes mappát az osztály használatával DirectoryInfo adja vissza:

A kód nem Imports rendelkezik utasításokkal a fájl tetején. Ezért a DirectoryInfo, StringBuilderés CrLf a hivatkozások mindegyike teljes mértékben megfelel a névtereknek.

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

2. példa

Az alábbi példa a hivatkozott névterekre vonatkozó utasításokat tartalmazza Imports . Ezért a típusokat nem kell teljes mértékben minősíteni a névtérekkel.

' 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

3. példa

Az alábbi példa olyan utasításokat tartalmaz Imports , amelyek aliasokat hoznak létre a hivatkozott névterekhez. A típusok az aliasokkal vannak minősítve.

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

4. példa

Az alábbi példa olyan utasításokat tartalmaz Imports , amelyek aliasokat hoznak létre a hivatkozott típusok számára. Az aliasok a típusok megadására szolgálnak.

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

Lásd még