TypeMapAssociationAttribute<TTypeMapGroup> Classe

Definizione

Rappresenta un attributo che crea un'associazione di tipi tra un tipo e il relativo 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

Parametri di tipo

TTypeMapGroup

Tipo del gruppo di mappe dei tipi.

Ereditarietà
TypeMapAssociationAttribute<TTypeMapGroup>
Attributi

Commenti

I tipi usati in un'operazione di interoperabilità gestita da non gestita possono usare TypeMapAssociationAttribute<TTypeMapGroup> per definire un collegamento condizionale tra l'origine e il tipo di proxy. Se l'origine viene mantenuta, è il tipo di proxy. Se il taglio osserva un'allocazione esplicita del tipo di origine, la voce viene inserita nella mappa.

Quando un'applicazione viene tagliata, viene inclusa una voce nella mappa dei tipi proxy quando viene fatto riferimento al "tipo di origine" in uno dei modi seguenti nel codice raggiungibile:

  • Argomento dell'istruzione ldtoken IL quando DynamicallyAccessedMembersAttribute viene specificato con un flag che mantiene i costruttori per il percorso di archiviazione.
  • Chiama a Type.GetType con una stringa costante che rappresenta il nome del tipo quando DynamicallyAccessedMembersAttribute viene specificato con un flag che mantiene i costruttori.
  • Tipo di un argomento del metodo per l'istruzione newobj .
  • Argomento generico per il CreateInstance<T>() metodo .
  • Argomento dell'istruzione box .
  • Argomento dell'istruzione newarr .
  • Argomento dell'istruzione mkrefany .
  • Argomento dell'istruzione refanyval .

Se il tipo è un tipo di interfaccia e l'utente potrebbe visualizzare un RuntimeTypeHandle oggetto per il tipo come parte di un'operazione di cast o risoluzione del metodo virtuale (ad esempio con IDynamicInterfaceCastable), si applicano anche i casi seguenti:

  • Argomento dell'istruzione isinst IL.
  • Argomento dell'istruzione castclass IL.
  • Tipo proprietario dell'argomento del metodo in callvirt o ldvirtftn.

Infine, se lo strumento di taglio determina che è impossibile recuperare un'istanza Type che rappresenta il "tipo di origine" in fase di esecuzione, la voce potrebbe essere omessa dalla mappa dei tipi proxy perché la sua esistenza non è osservabile.

Importante

I mapping chiave/valore in conflitto non sono consentiti.

Note

Il formato sottostante delle mappe prodotte è definito dall'implementazione. Diversi .NET fattori di forma possono usare formati diversi. Inoltre, non è garantito che gli TypeMapAttribute<TTypeMapGroup>attributi , TypeMapAssociationAttribute<TTypeMapGroup>e TypeMapAssemblyTargetAttribute<TTypeMapGroup> siano presenti nell'immagine finale dopo l'esecuzione di uno strumento di taglio.

Costruttori

Nome Descrizione
TypeMapAssociationAttribute<TTypeMapGroup>(Type, Type)

Inizializza una nuova istanza di TypeMapAssociationAttribute<TTypeMapGroup>.

Proprietà

Nome Descrizione
TypeId

Se implementato in una classe derivata, ottiene un identificatore univoco per questo Attribute.

(Ereditato da Attribute)

Metodi

Nome Descrizione
Equals(Object)

Restituisce un valore che indica se questa istanza è uguale a un oggetto specificato.

(Ereditato da Attribute)
GetHashCode()

Restituisce il codice hash per questa istanza.

(Ereditato da Attribute)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
IsDefaultAttribute()

Quando sottoposto a override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata.

(Ereditato da Attribute)
Match(Object)

Quando sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza è uguale a un oggetto specificato.

(Ereditato da Attribute)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a