다음을 통해 공유


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 이 캐시의 instance 반환합니다. 개체에 GetCache 대해 지원되는 캐시가 없으면 메서드가 반환 null 됩니다.

에서 TypeDescriptor 사용하는 기본값 TypeDescriptionProvider 은 개체를 검사하여 인터페이스를 구현하는 배치된 구성 요소인지 확인합니다IDictionaryService. 개체가 이면 사전 서비스를 사용하여 개체의 캐시를 저장합니다. 그렇지 않으면 를 반환 null하는 개체입니다. 다른 형식 설명 공급자는 여기에서 자체 구현을 제공할 수 있습니다. 예를 들어 종속성 개체는 형식 IDictionary의 속성을 연결할 수 있습니다.

적용 대상

추가 정보