TypeMapAssociationAttribute<TTypeMapGroup> Classe
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.
Representa um atributo que cria uma associação de tipo entre um tipo e o seu proxy.
generic <typename TTypeMapGroup>
public ref class TypeMapAssociationAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)]
public sealed class TypeMapAssociationAttribute<TTypeMapGroup> : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)>]
type TypeMapAssociationAttribute<'ypeMapGroup> = class
inherit Attribute
Public NotInheritable Class TypeMapAssociationAttribute(Of TTypeMapGroup)
Inherits Attribute
Parâmetros de Tipo Genérico
- TTypeMapGroup
O tipo do grupo de mapas de tipos.
- Herança
- Atributos
Observações
Os tipos usados numa operação de interoperabilidade gerida para não gerida podem ser usados TypeMapAssociationAttribute<TTypeMapGroup> para definir uma ligação condicional entre o tipo de origem e o tipo proxy. Se a fonte for mantida, também é mantido o tipo proxy. Se o corte observar uma alocação explícita do tipo de origem, a entrada é inserida no mapa.
Quando uma aplicação é cortada, uma entrada no Mapa de Tipos de Proxy é incluída quando o "tipo de origem" é referenciado de uma das seguintes formas em código acessível:
- O argumento para a
ldtokeninstrução IL quando DynamicallyAccessedMembersAttribute é especificado com uma flag que preserva os construtores para a localização de armazenamento. - Chamadas para Type.GetType com uma string constante que representa o nome do tipo quando DynamicallyAccessedMembersAttribute é especificado com uma flag que preserva os construtores.
- O tipo de argumento de método para a
newobjinstrução. - O argumento genérico do CreateInstance<T>() método.
- O argumento da
boxinstrução. - O argumento da
newarrinstrução. - O argumento da
mkrefanyinstrução. - O argumento da
refanyvalinstrução.
Se o tipo for um tipo de interface e o utilizador puder eventualmente ver um RuntimeTypeHandle para o tipo como parte de uma operação de casting ou resolução de método virtual (como com IDynamicInterfaceCastable), então os seguintes casos também se aplicam:
- O argumento à
isinstinstrução do IL. - O argumento à
castclassinstrução do IL. - O tipo proprietário do argumento do método a
callvirtouldvirtftn.
Finalmente, se a ferramenta de corte determinar que é impossível recuperar uma Type instância que represente o "tipo de origem" em tempo de execução, então a entrada pode ser omitida do Mapa de Tipos de Proxy, pois a sua existência é inobservável.
Importante
Mapeamentos conflitantes de chaves/valores não são permitidos.
Note
O formato subjacente dos mapas produzidos é definido pela implementação. Diferentes formatos .NET podem usar formatos diferentes. Além disso, não é garantido que os TypeMapAttribute<TTypeMapGroup>atributos , TypeMapAssociationAttribute<TTypeMapGroup>, e TypeMapAssemblyTargetAttribute<TTypeMapGroup> estejam presentes na imagem final depois de uma ferramenta de corte ter sido executada.
Construtores
| Name | Description |
|---|---|
| TypeMapAssociationAttribute<TTypeMapGroup>(Type, Type) |
Inicializa uma nova instância de TypeMapAssociationAttribute<TTypeMapGroup>. |
Propriedades
| Name | Description |
|---|---|
| TypeId |
Quando implementado numa classe derivada, obtém um identificador único para esta Attribute. (Herdado de Attribute) |
Métodos
| Name | Description |
|---|---|
| Equals(Object) |
Devolve um valor que indica se esta instância é igual a um objeto especificado. (Herdado de Attribute) |
| GetHashCode() |
Devolve o código de hash para esta instância. (Herdado de Attribute) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| IsDefaultAttribute() |
Quando sobrescrito numa classe derivada, indica se o valor desta instância é o valor padrão para a classe derivada. (Herdado de Attribute) |
| Match(Object) |
Quando sobrescrito numa classe derivada, devolve um valor que indica se esta instância é igual a um objeto especificado. (Herdado de Attribute) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |