Share via


Imports-Anweisung (.NET-Namespace und Typ)

Aktualisiert: November 2007

Importiert Namespaces oder Programmierelemente, die im aktuellen Projekt oder in referenzierten Projekten und Assemblys definiert sind.

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

Bestandteile

  • aliasname
    Optional. Ein Importalias oder Name, mit dem Code auf namespace statt auf den vollständigen Qualifizierungspfad verweisen kann. Siehe Namen deklarierter Elemente.

  • namespace
    Erforderlich. Der vollqualifizierte Name des importierten Namespaces. Kann eine Zeichenfolge mit Namespaces sein, die auf beliebiger Ebenen geschachtelt sind.

  • element
    Optional. Der Name eines im Namespace deklarierten Programmierelements. Kann ein beliebiges Containerelement sein.

Hinweise

Jede Quelldatei kann beliebig viele Imports-Anweisungen enthalten. Diese müssen nach sämtlichen Option-Deklarationen, z. B. Option Strict, angegeben werden und sämtlichen Deklarationen von Programmierelementen, z. B. Module-Anweisungen oder Class-Anweisungen, vorangestellt werden.

Imports kann nur auf Dateiebene verwendet werden. Dies bedeutet, dass der Deklarationskontext für den Import eine Quelldatei sein muss und kein Namespace, keine Klasse, keine Struktur, kein Modul, keine Schnittstelle, keine Prozedur und kein Block sein kann.

Importaliase sind sinnvoll, wenn Sie Elemente mit identischen Namen verwenden, die in einem oder mehreren Namespaces deklariert sind. Weitere Informationen und ein Beispiel finden Sie in Auflösen eines Verweises bei mehreren Variablen mit gleichem Namen unter "Klassen mit demselben Namen".

Beachten Sie, dass mit der Imports-Anweisung keine Elemente aus anderen Projekten und Assemblys für ein Projekt verfügbar gemacht werden. Das Importieren ersetzt nicht des Festlegens eines Verweises. Es macht nur das Qualifizieren von Namen überflüssig, die bereits für das Projekt verfügbar sind. Weitere Informationen finden Sie unter Auflösen eines Verweises bei mehreren Variablen mit gleichem Namen in "Importieren von enthaltenden Elementen".

Hinweis:

Obwohl für die Deklaration eines Importalias eine ähnliche Syntax verwendet wird, wie für den Import eines XML-Namespacepräfixes, unterscheiden sich die Ergebnisse. Ein Importalias kann auch als Ausdruck im Code verwendet werden, während ein XML-Namespacepräfix nur in XML-Literalen oder in XML-Achseneigenschaften als Präfix für ein qualifiziertes Element oder einen Attributnamen verwendet werden kann.

Regeln

  • Aliasname. Deklarieren Sie einen Member nicht auf Modulebene mit demselben Namen wie aliasname. Andernfalls verwendet der Visual Basic-Compiler aliasname nur für den deklarierten Member und erkennt den Namen nicht mehr als Importalias.

  • Namespacename. Sie können einen einzelnen Namespacenamen oder eine Zeichenfolge mit geschachtelten Namespaces angeben. Jeder geschachtelte Namespace ist vom Namespace auf der nächsthöheren Ebene durch einen (.) getrennt, wie im folgenden Beispiel veranschaulicht.

    Imports System.Collections.Generic

  • Elementtyp. Wenn Sie element angeben, muss dieses ein Containerelement darstellen, d. h. ein Programmierelement, das andere Elemente enthalten kann. Zu Containerelementen zählen Klassen, Strukturen, Module, Schnittstellen und Enumerationen.

Verhalten

  • Gültigkeitsbereich. Der Gültigkeitsbereich der Elemente, die durch eine Imports-Anweisung verfügbar gemacht werden, hängt davon ab, ob Sie element angeben. Wenn Sie nur namespace angeben, sind alle eindeutig benannten Member dieses Namespaces und die Member der Containerelemente in diesem Namespace ohne Qualifizierung verfügbar. Wenn Sie sowohl namespace als auch element angeben, sind nur die Member dieses Elements ohne Qualifizierung verfügbar.

  • Qualifizierung. Code außerhalb eines Namespaces oder Containerelements muss i. d. R. den Namen eines Members mit dem Namen dieses Namespaces oder Containerelements qualifizieren. Mit der Imports-Anweisung ist eine solche Qualifizierung überflüssig, es sei denn, das Projekt greift auf einen anderen Member mit demselben Namen zu. In solch einem Fall können Sie in jeder Imports-Anweisung einen aliasname angeben. Dann müssen nur für die Importaliase die Member mit demselben Namen qualifiziert werden.

Beispiel

Im folgenden Beispiel wird die Microsoft.VisualBasic.Strings-Klasse importiert und der Alias str zugewiesen, der für den Zugriff auf die Left-Methode verwendet werden kann.

' Place Imports statements at the top of your program.
Imports str = Microsoft.VisualBasic.Strings
Class testClass1
    Sub showHello()
        ' Display only the word "Hello"
        MsgBox(str.Left("Hello World", 5))
    End Sub
End Class

Beachten Sie, dass im vorherigen Beispiel der geschachtelte Namespace Strings importiert wird, der in VisualBasic geschachtelt ist, das wiederum in Microsoft geschachtelt ist. Wenn die MsgBox-Funktion (Visual Basic) auf die Left-Methode zugreift, kann sie den Alias str anstelle des gesamten Qualifizierungspfads Microsoft.VisualBasic.Strings verwenden.

Siehe auch

Konzepte

Einführung in die .NET Framework-Klassenbibliothek in Visual Studio

Namespaces in Visual Basic

Referenz

Namespace-Anweisung

Imports-Anweisung (XML-Namespace)

Weitere Ressourcen

Visual Basic und .NET Framework