Assembly.GetCustomAttributes Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die benutzerdefinierten Attribute für diese Assembly ab.
Überlädt
GetCustomAttributes(Boolean) |
Ruft alle benutzerdefinierten Attribute für diese Assembly ab. |
GetCustomAttributes(Type, Boolean) |
Ruft die benutzerdefinierten Attribute für diese Assembly ab, wie durch den Typ angegeben. |
GetCustomAttributes(Boolean)
- Quelle:
- Assembly.cs
- Quelle:
- Assembly.cs
- Quelle:
- Assembly.cs
Ruft alle benutzerdefinierten Attribute für diese Assembly ab.
public:
virtual cli::array <System::Object ^> ^ GetCustomAttributes(bool inherit);
public virtual object[] GetCustomAttributes (bool inherit);
abstract member GetCustomAttributes : bool -> obj[]
override this.GetCustomAttributes : bool -> obj[]
Public Overridable Function GetCustomAttributes (inherit As Boolean) As Object()
Parameter
Gibt zurück
Ein Array, das die benutzerdefinierten Attribute für diese Assembly enthält.
Implementiert
Hinweise
Diese Methode implementiert die entsprechende ICustomAttributeProvider Schnittstellenmethode. Daher muss der inherit
Parameter angegeben werden, obwohl er ignoriert wird.
Ein Pseudo-Attribut gibt Bits der Kernmetadaten an, die festgelegt werden müssen, wenn das Attribut vorhanden ist. Im Gegensatz zu einem benutzerdefinierten Attribut, das die Metadaten für einen Typ erweitert und zusammen mit dem Typ gespeichert wird, ändert ein Pseudo-Attribut die Metadaten für den Typ und wird dann verworfen. Auf einige der resultierenden Bits kann nicht mithilfe vorhandener Reflexions-APIs zugegriffen werden.
In der folgenden Tabelle sind die verschiedenen Pseudoattribute und die Accessoren für die Bits zusammengefasst, die in der Reflektion verfügbar sind.
Pseudo-Attribute | Metadatenbits | Reflektionszugriff |
---|---|---|
DllImportAttribute | CorPInvokeMap DLL-Name |
Kein Accessor für PInvokeMap für normale Methoden-/globale Methodenattribute.Kein Accessor für DLL-Name. |
GuidAttribute | Gespeichert als echtes benutzerdefiniertes Attribut. | Zugriff als echtes benutzerdefiniertes Attribut. |
ComImportAttribute | CorTypeAttr.tdImport |
Type.Attributes.Import |
SerializableAttribute | CorTypeAttr.tdSerializable |
Type.Attributes.Serializable |
NonSerializedAttribute | CorFieldAttr.fdNotSerialized |
FieldInfo.Attributes.NotSerialized |
MethodImplAttribute | CorMethodImpl |
MethodInfo.GetMethodImplementationFlags() ConstructorInfo.GetMethodImplementationFlags() |
MarshalAsAttribute | Verschiedene Bits. | Kein Accessor. |
PreserveSigAttribute | CorMethodImpl.miOLE |
MethodInfo.GetMethodImplementationFlags().OLE ConstructorInfo.GetMethodImplementationFlags().OLE |
InAttribute | CorParamAttr.pdIn |
ParameterInfo.Attributes.In |
OutAttribute | CorParamAttr.pdOut |
ParameterInfo.Attributes.Out |
StructLayoutAttribute | CorTypeAttr.tdLayoutSequential CorTypeAttr.tdExplicitLayout CorTypeAttr.tdAnsiClass CorTypeAttr.tdUnicodeClass CorTypeAttr.tdAutoClass Klassenverpackung. |
Type.Attributes.LayoutSequential Type.Attributes.ExplicitLayout Type.Attributes.AnsiClass Type.Attributes.UnicodeClass Type.Attributes.AutoClass Kein Accessor. |
FieldOffsetAttribute | Feldoffset. | Kein Accessor. |
AssemblyLoadAttribute |
CorAssemblyFlags |
Kein Accessor oder Enumerator. |
Gilt für:
GetCustomAttributes(Type, Boolean)
- Quelle:
- Assembly.cs
- Quelle:
- Assembly.cs
- Quelle:
- Assembly.cs
Ruft die benutzerdefinierten Attribute für diese Assembly ab, wie durch den Typ angegeben.
public:
virtual cli::array <System::Object ^> ^ GetCustomAttributes(Type ^ attributeType, bool inherit);
public virtual object[] GetCustomAttributes (Type attributeType, bool inherit);
abstract member GetCustomAttributes : Type * bool -> obj[]
override this.GetCustomAttributes : Type * bool -> obj[]
Public Overridable Function GetCustomAttributes (attributeType As Type, inherit As Boolean) As Object()
Parameter
- attributeType
- Type
Der Typ, für den die benutzerdefinierten Attribute zurückzugeben sind.
Gibt zurück
Ein Array, das die benutzerdefinierten Attribute für diese Assembly enthält, wie durch attributeType
angegeben.
Implementiert
Ausnahmen
attributeType
ist null
.
attributeType
ist kein Laufzeittyp.
Hinweise
Diese Methode implementiert die entsprechende ICustomAttributeProvider Schnittstellenmethode. Daher muss der inherit
Parameter angegeben werden, obwohl er ignoriert wird.
Ein Pseudo-Attribut gibt Bits der Kernmetadaten an, die festgelegt werden müssen, wenn das Attribut vorhanden ist. Im Gegensatz zu einem benutzerdefinierten Attribut, das die Metadaten für einen Typ erweitert und zusammen mit dem Typ gespeichert wird, ändert ein Pseudo-Attribut die Metadaten für den Typ und wird dann verworfen. Auf einige der resultierenden Bits kann nicht mithilfe vorhandener Reflexions-APIs zugegriffen werden.
In der folgenden Tabelle sind die verschiedenen Pseudoattribute und die Accessoren für die Bits zusammengefasst, die in der Reflektion verfügbar sind.
Pseudo-Attribute | Metadatenbits | Reflektionszugriff |
---|---|---|
DllImportAttribute | CorPInvokeMap DLL-Name |
Kein Accessor für PInvokeMap für normale Methoden-/globale Methodenattribute.Kein Accessor für DLL-Name. |
GuidAttribute | Gespeichert als echtes benutzerdefiniertes Attribut. | Zugriff als echtes benutzerdefiniertes Attribut. |
ComImportAttribute | CorTypeAttr.tdImport |
Type.Attributes.Import |
SerializableAttribute | CorTypeAttr.tdSerializable |
Type.Attributes.Serializable |
NonSerializedAttribute | CorFieldAttr.fdNotSerialized |
FieldInfo.Attributes.NotSerialized |
MethodImplAttribute | CorMethodImpl |
MethodInfo.GetMethodImplementationFlags() ConstructorInfo.GetMethodImplementationFlags() |
MarshalAsAttribute | Verschiedene Bits. | Kein Accessor. |
PreserveSigAttribute | CorMethodImpl.miOLE |
MethodInfo.GetMethodImplementationFlags().OLE ConstructorInfo.GetMethodImplementationFlags().OLE |
InAttribute | CorParamAttr.pdIn |
ParameterInfo.Attributes.In |
OutAttribute | CorParamAttr.pdOut |
ParameterInfo.Attributes.Out |
StructLayoutAttribute | CorTypeAttr.tdLayoutSequential CorTypeAttr.tdExplicitLayout CorTypeAttr.tdAnsiClass CorTypeAttr.tdUnicodeClass CorTypeAttr.tdAutoClass Klassenverpackung. |
Type.Attributes.LayoutSequential Type.Attributes.ExplicitLayout Type.Attributes.AnsiClass Type.Attributes.UnicodeClass Type.Attributes.AutoClass Kein Accessor. |
FieldOffsetAttribute | Feldoffset. | Kein Accessor. |
AssemblyLoadAttribute |
CorAssemblyFlags |
Kein Accessor oder Enumerator. |