Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Reflection stellt Objekte (vom Typ Type) bereit, die Assemblys, Module und Typen beschreiben. Mithilfe der Spiegelung können Sie eine Instanz eines Typs dynamisch erstellen, den Typ an ein vorhandenes Objekt binden oder den Typ aus einem vorhandenen Objekt abrufen und seine Methoden aufrufen oder auf seine Felder und Eigenschaften zugreifen. Wenn Sie Attribute in Ihrem Code verwenden, können Sie mit Spiegelung darauf zugreifen. Weitere Informationen finden Sie unter Attribute.
Hier ist ein einfaches Beispiel für Spiegelung mithilfe der statischen Methode GetType
, die von allen Typen von der Object
Basisklasse geerbt wird, um den Typ einer Variablen abzurufen:
' Using GetType to obtain type information:
Dim i As Integer = 42
Dim type As System.Type = i.GetType()
System.Console.WriteLine(type)
Die Ausgabe lautet:
System.Int32
Im folgenden Beispiel wird Reflection verwendet, um den vollständigen Namen der geladenen Assembly abzurufen.
' Using Reflection to get information from an Assembly:
Dim info As System.Reflection.Assembly = GetType(System.Int32).Assembly
System.Console.WriteLine(info)
Die Ausgabe lautet:
mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Übersicht über Reflektion
Spiegelung ist in den folgenden Situationen nützlich:
Wenn Sie auf Attribute in den Metadaten Ihres Programms zugreifen müssen. Weitere Informationen finden Sie unter Abrufen von Informationen, die in Attributengespeichert sind.
Zum Untersuchen und Instanziieren von Typen in einer Assembly
Zum Erstellen neuer Typen zur Laufzeit Verwenden Sie Klassen in System.Reflection.Emit.
Zum Ausführen von spätem Binden mit Zugriff auf Methoden der zur Laufzeit erstellten Typen Weitere Informationen finden Sie im Thema "Dynamisches Laden und Verwenden von Typen".
Verwandte Abschnitte
Weitere Informationen: