Condividi tramite


Assembly.GetCustomAttributes Metodo

Definizione

Ottiene gli attributi personalizzati per questo assembly.

Overload

GetCustomAttributes(Boolean)

Ottiene tutti gli attributi personalizzati per questo assembly.

GetCustomAttributes(Type, Boolean)

Ottiene gli attributi personalizzati per questo assembly, come specificato dal tipo.

GetCustomAttributes(Boolean)

Origine:
Assembly.cs
Origine:
Assembly.cs
Origine:
Assembly.cs

Ottiene tutti gli attributi personalizzati per questo 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.

Restituisce

Object[]

Matrice contenente gli attributi personalizzati per questo assembly.

Implementazioni

Commenti

Questo metodo implementa il metodo di interfaccia corrispondente ICustomAttributeProvider . Pertanto, il inherit parametro deve essere specificato anche se viene ignorato.

Un attributo pseudo-attributo indica bit dei metadati di base che devono essere impostati quando l'attributo è presente. A differenza di un attributo personalizzato che estende i metadati per un tipo e viene salvato insieme al tipo, un attributo pseudo-attributo modifica i metadati per il tipo e quindi viene rimosso. Alcuni dei bit risultanti non possono essere accessibili usando le API di reflection esistenti.

La tabella seguente riepiloga i diversi attributi pseudo-e le funzioni di accesso per i bit disponibili in reflection.

Pseudo-Attribute Bit di metadati Funzione di accesso reflection
DllImportAttribute CorPInvokeMap

Nome DLL
Nessuna funzione di accesso per PInvokeMap gli attributi di metodo/metodo globale ordinari.

Nessuna funzione di accesso per il nome della DLL.
GuidAttribute Archiviato come attributo personalizzato reale. Accesso come attributo personalizzato reale.
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 Vari bit. Nessuna funzione di accesso.
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

Imballaggio di classi.
Type.Attributes.LayoutSequential

Type.Attributes.ExplicitLayout

Type.Attributes.AnsiClass

Type.Attributes.UnicodeClass

Type.Attributes.AutoClass

Nessuna funzione di accesso.
FieldOffsetAttribute Offset del campo. Nessuna funzione di accesso.
AssemblyLoadAttribute CorAssemblyFlags Nessuna funzione di accesso o enumeratore.

Si applica a

GetCustomAttributes(Type, Boolean)

Origine:
Assembly.cs
Origine:
Assembly.cs
Origine:
Assembly.cs

Ottiene gli attributi personalizzati per questo assembly, come specificato dal tipo.

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.

inherit
Boolean

Questo argomento viene ignorato per gli oggetti di tipo Assembly.

Restituisce

Object[]

Matrice contenente gli attributi personalizzati per questo assembly, come specificato da attributeType.

Implementazioni

Eccezioni

attributeType è null.

attributeType non è un tipo di runtime.

Commenti

Questo metodo implementa il metodo di interfaccia corrispondente ICustomAttributeProvider . Pertanto, il inherit parametro deve essere specificato anche se viene ignorato.

Un attributo pseudo-attributo indica bit dei metadati di base che devono essere impostati quando l'attributo è presente. A differenza di un attributo personalizzato che estende i metadati per un tipo e viene salvato insieme al tipo, un attributo pseudo-attributo modifica i metadati per il tipo e quindi viene rimosso. Alcuni dei bit risultanti non possono essere accessibili usando le API di reflection esistenti.

La tabella seguente riepiloga i diversi attributi pseudo-e le funzioni di accesso per i bit disponibili in reflection.

Pseudo-Attribute Bit di metadati Funzione di accesso reflection
DllImportAttribute CorPInvokeMap

Nome DLL
Nessuna funzione di accesso per PInvokeMap gli attributi di metodo/metodo globale ordinari.

Nessuna funzione di accesso per il nome della DLL.
GuidAttribute Archiviato come attributo personalizzato reale. Accesso come attributo personalizzato reale.
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 Vari bit. Nessuna funzione di accesso.
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

Imballaggio di classi.
Type.Attributes.LayoutSequential

Type.Attributes.ExplicitLayout

Type.Attributes.AnsiClass

Type.Attributes.UnicodeClass

Type.Attributes.AutoClass

Nessuna funzione di accesso.
FieldOffsetAttribute Offset del campo. Nessuna funzione di accesso.
AssemblyLoadAttribute CorAssemblyFlags Nessuna funzione di accesso o enumeratore.

Si applica a