Assembly.GetCustomAttributes Metodo

Definizione

Ottiene gli attributi personalizzati per questo assembly.Gets the custom attributes for this assembly.

Overload

GetCustomAttributes(Boolean)

Ottiene tutti gli attributi personalizzati per questo assembly.Gets all the custom attributes for this assembly.

GetCustomAttributes(Type, Boolean)

Ottiene gli attributi personalizzati per questo assembly, come specificato dal tipo.Gets the custom attributes for this assembly as specified by type.

GetCustomAttributes(Boolean)

Ottiene tutti gli attributi personalizzati per questo assembly.Gets all the custom attributes for this assembly.

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()

Parametri

inherit
Boolean

Questo argomento viene ignorato per gli oggetti di tipo Assembly.This argument is ignored for objects of type Assembly.

Restituisce

Object[]

Matrice contenente gli attributi personalizzati per questo assembly.An array that contains the custom attributes for this assembly.

Implementazioni

Commenti

Questo metodo implementa il metodo di interfaccia ICustomAttributeProvider corrispondente.This method implements the corresponding ICustomAttributeProvider interface method. Pertanto, è necessario specificare il parametro inherit anche se viene ignorato.Therefore, the inherit parameter must be specified even though it is ignored.

Uno pseudo-attributo indica i bit dei metadati principali che devono essere impostati quando è presente l'attributo.A pseudo-attribute indicates bits of the core metadata that must be set when the attribute is present. A differenza di un attributo personalizzato che estende i metadati per un tipo e viene salvato insieme al tipo, uno pseudo-attributo modifica i metadati per il tipo e quindi viene ignorato.Unlike a custom attribute that extends the metadata for a type and is saved along with the type, a pseudo-attribute modifies the metadata for the type and then is discarded. Non è possibile accedere ad alcuni dei bit risultanti usando le API di reflection esistenti.Some of the resulting bits cannot be accessed using existing reflection APIs.

Nella tabella seguente vengono riepilogati i diversi pseudo-attributi e le funzioni di accesso per i bit disponibili nella reflection.The following table summarizes the different pseudo-attributes and the accessors for the bits that are available in reflection.

Pseudo-attributoPseudo-Attribute Bit dei metadatiMetadata Bits Funzione di accesso ReflectionReflection Accessor
DllImportAttributeDllImportAttribute CorPInvokeMapCorPInvokeMap

Nome DLLDLL name
Nessuna funzione di accesso per PInvokeMap per gli attributi comuni del metodo o del metodo globale.No accessor for PInvokeMap for ordinary method/global method attributes.

Nessuna funzione di accesso per il nome della DLL.No accessor for DLL name.
GuidAttributeGuidAttribute Archiviato come attributo personalizzato reale.Stored as a real custom attribute. Accesso come attributo personalizzato reale.Accessed as a real custom attribute.
ComImportAttributeComImportAttribute CorTypeAttr. tdImportCorTypeAttr.tdImport Digitare. Attributes. ImportType.Attributes.Import
SerializableAttributeSerializableAttribute CorTypeAttr. tdSerializableCorTypeAttr.tdSerializable Type. Attributes. SerializableType.Attributes.Serializable
NonSerializedAttributeNonSerializedAttribute CorFieldAttr. fdNotSerializedCorFieldAttr.fdNotSerialized FieldInfo. Attributes. NotSerializedFieldInfo.Attributes.NotSerialized
MethodImplAttributeMethodImplAttribute CorMethodImplCorMethodImpl MethodInfo. GetMethodImplementationFlags ()MethodInfo.GetMethodImplementationFlags()

ConstructorInfo. GetMethodImplementationFlags ()ConstructorInfo.GetMethodImplementationFlags()
MarshalAsAttributeMarshalAsAttribute Vari bit.Various bits. Nessuna funzione di accesso.No accessor.
PreserveSigAttributePreserveSigAttribute CorMethodImpl. miOLECorMethodImpl.miOLE MethodInfo. GetMethodImplementationFlags (). OLEMethodInfo.GetMethodImplementationFlags().OLE

ConstructorInfo. GetMethodImplementationFlags (). OLEConstructorInfo.GetMethodImplementationFlags().OLE
InAttributeInAttribute CorParamAttr. pdInCorParamAttr.pdIn ParameterInfo.Attributes.InParameterInfo.Attributes.In
OutAttributeOutAttribute CorParamAttr. pdOutCorParamAttr.pdOut ParameterInfo. Attributes. outParameterInfo.Attributes.Out
StructLayoutAttributeStructLayoutAttribute CorTypeAttr. tdLayoutSequentialCorTypeAttr.tdLayoutSequential

CorTypeAttr. tdExplicitLayoutCorTypeAttr.tdExplicitLayout

CorTypeAttr. tdAnsiClassCorTypeAttr.tdAnsiClass

CorTypeAttr. tdUnicodeClassCorTypeAttr.tdUnicodeClass

CorTypeAttr. tdAutoClassCorTypeAttr.tdAutoClass

Compressione della classe.Class packing.
Digitare. Attributes. LayoutSequentialType.Attributes.LayoutSequential

Digitare. Attributes. ExplicitLayoutType.Attributes.ExplicitLayout

Digitare. Attributes. AnsiClassType.Attributes.AnsiClass

Digitare. Attributes. UnicodeClassType.Attributes.UnicodeClass

Type. Attributes. AutoClassType.Attributes.AutoClass

Nessuna funzione di accesso.No accessor.
FieldOffsetAttributeFieldOffsetAttribute Offset del campo.Field offset. Nessuna funzione di accesso.No accessor.
AssemblyLoadAttributeAssemblyLoadAttribute CorAssemblyFlagsCorAssemblyFlags Nessuna funzione di accesso o enumeratore.No accessor or enumerator.

Sicurezza

ReflectionPermission
Quando viene richiamato ad associazione tardiva tramite meccanismi come InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]).when invoked late-bound through mechanisms such as InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]). Enumerazione associata: MemberAccessAssociated enumeration: MemberAccess

GetCustomAttributes(Type, Boolean)

Ottiene gli attributi personalizzati per questo assembly, come specificato dal tipo.Gets the custom attributes for this assembly as specified by type.

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()

Parametri

attributeType
Type

Tipo per cui restituire gli attributi personalizzati.The type for which the custom attributes are to be returned.

inherit
Boolean

Questo argomento viene ignorato per gli oggetti di tipo Assembly.This argument is ignored for objects of type Assembly.

Restituisce

Object[]

Matrice contenente gli attributi personalizzati per questo assembly, come specificato da attributeType.An array that contains the custom attributes for this assembly as specified by attributeType.

Implementazioni

Eccezioni

attributeType è null.attributeType is null.

attributeType non è un tipo di runtime.attributeType is not a runtime type.

Commenti

Questo metodo implementa il metodo di interfaccia ICustomAttributeProvider corrispondente.This method implements the corresponding ICustomAttributeProvider interface method. Pertanto, è necessario specificare il parametro inherit anche se viene ignorato.Therefore, the inherit parameter must be specified even though it is ignored.

Uno pseudo-attributo indica i bit dei metadati principali che devono essere impostati quando è presente l'attributo.A pseudo-attribute indicates bits of the core metadata that must be set when the attribute is present. A differenza di un attributo personalizzato che estende i metadati per un tipo e viene salvato insieme al tipo, uno pseudo-attributo modifica i metadati per il tipo e quindi viene ignorato.Unlike a custom attribute that extends the metadata for a type and is saved along with the type, a pseudo-attribute modifies the metadata for the type and then is discarded. Non è possibile accedere ad alcuni dei bit risultanti usando le API di reflection esistenti.Some of the resulting bits cannot be accessed using existing reflection APIs.

Nella tabella seguente vengono riepilogati i diversi pseudo-attributi e le funzioni di accesso per i bit disponibili nella reflection.The following table summarizes the different pseudo-attributes and the accessors for the bits that are available in reflection.

Pseudo-attributoPseudo-Attribute Bit dei metadatiMetadata Bits Funzione di accesso ReflectionReflection Accessor
DllImportAttributeDllImportAttribute CorPInvokeMapCorPInvokeMap

Nome DLLDLL name
Nessuna funzione di accesso per PInvokeMap per gli attributi comuni del metodo o del metodo globale.No accessor for PInvokeMap for ordinary method/global method attributes.

Nessuna funzione di accesso per il nome della DLL.No accessor for DLL name.
GuidAttributeGuidAttribute Archiviato come attributo personalizzato reale.Stored as a real custom attribute. Accesso come attributo personalizzato reale.Accessed as a real custom attribute.
ComImportAttributeComImportAttribute CorTypeAttr. tdImportCorTypeAttr.tdImport Digitare. Attributes. ImportType.Attributes.Import
SerializableAttributeSerializableAttribute CorTypeAttr. tdSerializableCorTypeAttr.tdSerializable Type. Attributes. SerializableType.Attributes.Serializable
NonSerializedAttributeNonSerializedAttribute CorFieldAttr. fdNotSerializedCorFieldAttr.fdNotSerialized FieldInfo. Attributes. NotSerializedFieldInfo.Attributes.NotSerialized
MethodImplAttributeMethodImplAttribute CorMethodImplCorMethodImpl MethodInfo. GetMethodImplementationFlags ()MethodInfo.GetMethodImplementationFlags()

ConstructorInfo. GetMethodImplementationFlags ()ConstructorInfo.GetMethodImplementationFlags()
MarshalAsAttributeMarshalAsAttribute Vari bit.Various bits. Nessuna funzione di accesso.No accessor.
PreserveSigAttributePreserveSigAttribute CorMethodImpl. miOLECorMethodImpl.miOLE MethodInfo. GetMethodImplementationFlags (). OLEMethodInfo.GetMethodImplementationFlags().OLE

ConstructorInfo. GetMethodImplementationFlags (). OLEConstructorInfo.GetMethodImplementationFlags().OLE
InAttributeInAttribute CorParamAttr. pdInCorParamAttr.pdIn ParameterInfo.Attributes.InParameterInfo.Attributes.In
OutAttributeOutAttribute CorParamAttr. pdOutCorParamAttr.pdOut ParameterInfo. Attributes. outParameterInfo.Attributes.Out
StructLayoutAttributeStructLayoutAttribute CorTypeAttr. tdLayoutSequentialCorTypeAttr.tdLayoutSequential

CorTypeAttr. tdExplicitLayoutCorTypeAttr.tdExplicitLayout

CorTypeAttr. tdAnsiClassCorTypeAttr.tdAnsiClass

CorTypeAttr. tdUnicodeClassCorTypeAttr.tdUnicodeClass

CorTypeAttr. tdAutoClassCorTypeAttr.tdAutoClass

Compressione della classe.Class packing.
Digitare. Attributes. LayoutSequentialType.Attributes.LayoutSequential

Digitare. Attributes. ExplicitLayoutType.Attributes.ExplicitLayout

Digitare. Attributes. AnsiClassType.Attributes.AnsiClass

Digitare. Attributes. UnicodeClassType.Attributes.UnicodeClass

Type. Attributes. AutoClassType.Attributes.AutoClass

Nessuna funzione di accesso.No accessor.
FieldOffsetAttributeFieldOffsetAttribute Offset del campo.Field offset. Nessuna funzione di accesso.No accessor.
AssemblyLoadAttributeAssemblyLoadAttribute CorAssemblyFlagsCorAssemblyFlags Nessuna funzione di accesso o enumeratore.No accessor or enumerator.

Sicurezza

ReflectionPermission
Quando viene richiamato ad associazione tardiva tramite meccanismi come InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]).when invoked late-bound through mechanisms such as InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]). Enumerazione associata: MemberAccessAssociated enumeration: MemberAccess

Si applica a