Condividi tramite


TypeDescriptionProvider.GetCache(Object) Metodo

Definizione

Ottiene una cache per oggetto, accessibile come interfaccia IDictionary di coppie chiave/valore.

public:
 virtual System::Collections::IDictionary ^ GetCache(System::Object ^ instance);
public virtual System.Collections.IDictionary GetCache (object instance);
public virtual System.Collections.IDictionary? GetCache (object instance);
abstract member GetCache : obj -> System.Collections.IDictionary
override this.GetCache : obj -> System.Collections.IDictionary
Public Overridable Function GetCache (instance As Object) As IDictionary

Parametri

instance
Object

Oggetto per cui ottenere la cache.

Restituisce

Un oggetto IDictionary se l'oggetto fornito supporta l'inserimento nella cache, altrimenti null.

Commenti

Potrebbe TypeDescriptor essere necessario eseguire operazioni complesse sulle raccolte di metadati. Poiché i tipi non vengono scaricati per la durata di un dominio, la TypeDescriptor classe memorizza automaticamente nella cache i risultati di queste operazioni in base al tipo. Tuttavia, alcune operazioni usano istanze di oggetti live. Queste operazioni non possono essere memorizzate nella cache all'interno della classe perché la memorizzazione nella cache impedisce la garbage collection dell'oggetto TypeDescriptor . La classe consente invece TypeDescriptor a una cache per oggetto, accessibile come coppia IDictionary chiave/valore, di esistere in un oggetto. Il metodo restituisce un'istanza GetCache di questa cache. Il GetCache metodo restituirà null se non è supportata alcuna cache per un oggetto.

L'impostazione predefinita utilizzata TypeDescriptionProvider da TypeDescriptor esamina l'oggetto per verificare se è un componente sito che implementa l'interfaccia IDictionaryService . Se l'oggetto è, usa il servizio dizionario per archiviare la cache dell'oggetto. In caso contrario, l'oggetto restituisce null. Altri provider di descrizioni dei tipi possono fornire la propria implementazione qui. Ad esempio, gli oggetti di dipendenza possono semplicemente collegare una proprietà di tipo IDictionary.

Si applica a

Vedi anche