次の方法で共有


TypeDescriptionProvider.GetCache(Object) メソッド

定義

キーと値のペアの IDictionary としてアクセスされる、オブジェクトごとのキャッシュを取得します。

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

パラメーター

instance
Object

キャッシュの取得対象となるオブジェクト。

戻り値

提供されるオブジェクトがキャッシュをサポートしている場合は IDictionary。それ以外の場合は null

注釈

では TypeDescriptor 、メタデータのコレクションに対して複雑な操作を実行することが必要な場合があります。 型はドメインの有効期間はアンロードされないため、 TypeDescriptor クラスは型に基づいてこれらの操作の結果を自動的にキャッシュします。 ただし、一部の操作ではライブ オブジェクト インスタンスが使用されます。 これらの操作を クラス内に TypeDescriptor キャッシュすることはできません。キャッシュすると、オブジェクトがガベージ コレクションされるのを防ぐことができます。 代わりに、 TypeDescriptor クラスを使用すると、キーと値のペアの として IDictionary アクセスされるオブジェクトごとのキャッシュをオブジェクトに存在できます。 メソッドは GetCache 、このキャッシュのインスタンスを返します。 オブジェクトに GetCache 対してサポートされているキャッシュがない場合、 メソッドは を返 null します。

によってTypeDescriptor使用される既定値TypeDescriptionProviderは、 オブジェクトを調べて、 インターフェイスを実装IDictionaryServiceするサイトコンポーネントであるかどうかを確認します。 オブジェクトが の場合は、ディクショナリ サービスを使用してオブジェクトのキャッシュを格納します。 それ以外の場合は、 を返す nullオブジェクト。 その他の型記述プロバイダーは、ここで独自の実装を提供する場合があります。 たとえば、依存関係オブジェクトでは、 型 IDictionaryのプロパティをアタッチするだけで済みます。

適用対象

こちらもご覧ください