Assembly.GetCustomAttributes Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém os atributos personalizados para esta montagem.
Sobrecargas
| Name | Description |
|---|---|
| GetCustomAttributes(Boolean) |
Obtém todos os atributos personalizados para esta montagem. |
| GetCustomAttributes(Type, Boolean) |
Obtém os atributos personalizados para esta montagem conforme especificado por tipo. |
GetCustomAttributes(Boolean)
Obtém todos os atributos personalizados para esta montagem.
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()
Parâmetros
Devoluções
Um array que contém os atributos personalizados para esta assembleia.
Implementações
Observações
Este método implementa o método de interface correspondente ICustomAttributeProvider . Portanto, o inherit parâmetro deve ser especificado mesmo que seja ignorado.
Um pseudo-atributo indica bits dos metadados centrais que devem ser definidos quando o atributo está presente. Ao contrário de um atributo personalizado que estende os metadados de um tipo e é guardado juntamente com o tipo, um pseudo-atributo modifica os metadados do tipo e depois é descartado. Alguns dos bits resultantes não podem ser acedidos usando APIs de reflexão existentes.
A tabela seguinte resume os diferentes pseudo-atributos e os acessores para os bits disponíveis em reflexão.
| Pseudo-Attribute | Bits de Metadados | Acessor de Reflexão |
|---|---|---|
| DllImportAttribute | CorPInvokeMapNome da DLL |
Não há acessório para PInvokeMap os atributos de método ordinário/global de método.Sem acessório para o nome DLL. |
| GuidAttribute | Armazenado como um atributo personalizado real. | Acedido como um atributo personalizado real. |
| 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 | Várias partes. | Sem acessório. |
| PreserveSigAttribute | CorMethodImpl.miOLE |
MethodInfo.GetMethodImplementationFlags().OLEConstructorInfo.GetMethodImplementationFlags().OLE |
| InAttribute | CorParamAttr.pdIn |
ParameterInfo.Attributes.In |
| OutAttribute | CorParamAttr.pdOut |
ParameterInfo.Attributes.Out |
| StructLayoutAttribute | CorTypeAttr.tdLayoutSequentialCorTypeAttr.tdExplicitLayoutCorTypeAttr.tdAnsiClassCorTypeAttr.tdUnicodeClassCorTypeAttr.tdAutoClassFazer as malas para a turma. |
Type.Attributes.LayoutSequentialType.Attributes.ExplicitLayoutType.Attributes.AnsiClassType.Attributes.UnicodeClassType.Attributes.AutoClassSem acessório. |
| FieldOffsetAttribute | Deslocamento de campo. | Sem acessório. |
AssemblyLoadAttribute |
CorAssemblyFlags |
Sem acessório nem enumerador. |
Aplica-se a
GetCustomAttributes(Type, Boolean)
Obtém os atributos personalizados para esta montagem conforme especificado por 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()
Parâmetros
- attributeType
- Type
O tipo para o qual os atributos personalizados devem ser devolvidos.
Devoluções
Um array que contém os atributos personalizados para este assembly, conforme especificado por attributeType.
Implementações
Exceções
attributeType é null.
attributeType não é um tipo de execução.
Observações
Este método implementa o método de interface correspondente ICustomAttributeProvider . Portanto, o inherit parâmetro deve ser especificado mesmo que seja ignorado.
Um pseudo-atributo indica bits dos metadados centrais que devem ser definidos quando o atributo está presente. Ao contrário de um atributo personalizado que estende os metadados de um tipo e é guardado juntamente com o tipo, um pseudo-atributo modifica os metadados do tipo e depois é descartado. Alguns dos bits resultantes não podem ser acedidos usando APIs de reflexão existentes.
A tabela seguinte resume os diferentes pseudo-atributos e os acessores para os bits disponíveis em reflexão.
| Pseudo-Attribute | Bits de Metadados | Acessor de Reflexão |
|---|---|---|
| DllImportAttribute | CorPInvokeMapNome da DLL |
Não há acessório para PInvokeMap os atributos de método ordinário/global de método.Sem acessório para o nome DLL. |
| GuidAttribute | Armazenado como um atributo personalizado real. | Acedido como um atributo personalizado real. |
| 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 | Várias partes. | Sem acessório. |
| PreserveSigAttribute | CorMethodImpl.miOLE |
MethodInfo.GetMethodImplementationFlags().OLEConstructorInfo.GetMethodImplementationFlags().OLE |
| InAttribute | CorParamAttr.pdIn |
ParameterInfo.Attributes.In |
| OutAttribute | CorParamAttr.pdOut |
ParameterInfo.Attributes.Out |
| StructLayoutAttribute | CorTypeAttr.tdLayoutSequentialCorTypeAttr.tdExplicitLayoutCorTypeAttr.tdAnsiClassCorTypeAttr.tdUnicodeClassCorTypeAttr.tdAutoClassFazer as malas para a turma. |
Type.Attributes.LayoutSequentialType.Attributes.ExplicitLayoutType.Attributes.AnsiClassType.Attributes.UnicodeClassType.Attributes.AutoClassSem acessório. |
| FieldOffsetAttribute | Deslocamento de campo. | Sem acessório. |
AssemblyLoadAttribute |
CorAssemblyFlags |
Sem acessório nem enumerador. |