Erweitern von Metadaten mithilfe von Attributen

Die Common Language Runtime (CLR) ermöglicht Ihnen, schlüsselwortähnliche beschreibende Deklarationen (sogenannte Attribute) hinzuzufügen, um Programmierelemente wie Typen, Felder, Methoden und Eigenschaften mit Anmerkungen zu versehen. Beim Kompilieren von Code für die Laufzeit wird dieser in die Microsoft Intermediate Language (MSIL) konvertiert und mit den vom Compiler generierten Metadaten in einer PE-Datei (Portable Executable) abgelegt. Mit Attributen können Sie Metadaten weitere beschreibende Informationen hinzufügen, die mit Reflexionsdiensten zur Laufzeit extrahiert werden können. Der Compiler erstellt Attribute, wenn Sie Instanzen spezieller Klassen deklarieren, die von System.Attribute abgeleitet werden.

.NET verwendet Attribute aus unterschiedlichen Gründen und zur Lösung verschiedener Probleme. Attribute beschreiben das Serialisieren von Daten, legen Eigenschaften zum Erzwingen von Sicherheit fest und beschränken Optimierungen durch den JIT-Compiler (Just-In-Time), sodass auch weiterhin ein einfaches Debuggen des Codes möglich ist. Außerdem können Attribute auch einen Dateinamen oder den Verfasser von Code aufzeichnen oder während der Entwicklung von Formularen die Sichtbarkeit von Steuerelementen und Membern steuern.

Titel Beschreibung
Anwenden von Attributen In diesem Abschnitt wird die Anwendung eines Attributs auf ein Codeelement beschrieben.
Verfassen von benutzerdefinierten Attributen Beschreibt, wie benutzerdefinierte Attributklassen entworfen werden.
Abrufen von Informationen aus Attributen Beschreibt, wie benutzerdefinierte Attribute für Code abgerufen werden, der in den Ausführungskontext geladen wird.
Metadaten und selbstbeschreibende Komponenten Dieser Abschnitt enthält eine Übersicht über Metadaten und beschreibt ihre Implementierung in einer portierbaren ausführbaren .NET-Datei (PE-Datei).
How to: Load Assemblies into the Reflection-Only Context (Gewusst wie: Laden von Assemblys in den auf Reflektion beschränkten Kontext) Erläutert das Abrufen benutzerdefinierter Attributinformationen in den ausschließlich reflektionsbezogenen Kontext.

Referenz