ExtensionManager 클래스
확장 컨텍스트를 유지 관리하고 확장을 로드합니다. 확장은 데이터베이스 프로젝트에서 사용되는 DatabaseSchemaProvider 인스턴스를 포함합니다. 각 데이터베이스 프로젝트에서는 단일 ExtensionManager 인스턴스를 유지 관리합니다.
상속 계층 구조
System.Object
Microsoft.Data.Schema.Extensibility.ExtensionManager
네임스페이스: Microsoft.Data.Schema.Extensibility
어셈블리: Microsoft.Data.Schema(Microsoft.Data.Schema.dll)
구문
‘선언
Public NotInheritable Class ExtensionManager
public sealed class ExtensionManager
public ref class ExtensionManager sealed
[<Sealed>]
type ExtensionManager = class end
public final class ExtensionManager
ExtensionManager 형식에서는 다음과 같은 멤버를 노출합니다.
생성자
이름 | 설명 | |
---|---|---|
ExtensionManager | DatabaseSchemaProvider 의 정규화된 형식 이름을 사용하여 ExtensionManager의 인스턴스를 초기화합니다. |
위쪽
속성
이름 | 설명 | |
---|---|---|
AllDatabaseSchemaProviderTypes | 사용 가능한 모든 데이터베이스 스키마 공급자 형식 목록을 가져옵니다. | |
DatabaseSchemaProvider | 연결된 데이터 소스 공급자 인스턴스를 가져옵니다. | |
Errors | 이 관리자 만들기로 인해 형식 로드가 트리거된 경우 로드 작업에서 읽기 전용 오류 컬렉션을 가져옵니다. | |
UseVisualStudioInstalledExtensionPaths | Visual Studio 확장 경로와 AddExtensionLoadPath()를 통해 지정된 모든 경로에서 extension.xml 파일 및 확장 어셈블리를 로드할지 여부를 가져오거나 설정합니다. |
위쪽
메서드
이름 | 설명 | |
---|---|---|
AddExtensionLoadPath | 확장 로드 경로의 목록에 경로를 추가합니다. | |
Equals | 지정한 Object가 현재 Object와 같은지 여부를 확인합니다. (Object에서 상속됨) | |
Finalize | 가비지 수집에서 회수하기 전에 개체에서 리소스를 해제하고 다른 정리 작업을 수행할 수 있게 합니다. (Object에서 상속됨) | |
GetExtension<TInterfaceType>(Type) | 제공된 Type과 일치하는 ExtensionHandle<TInterfaceType>을 검색합니다. | |
GetExtension<TInterfaceType>(ExtensionHandle) | 현재 ExtensionManager에서 형식이 IExtension이고 ExtensionHandle 매개 변수 값으로 식별되는 개체로 구성된 확장을 찾습니다. | |
GetExtension<TInterfaceType>(String, String) | 제공된 어셈블리 이름 및 형식 이름을 사용하여 현재 ExtensionManager에 로드된 확장 중에서 확장을 찾습니다. | |
GetExtensions<TInterfaceType> | 성공적으로 로드된, 제공된 확장 인터페이스 형식에 대한 확장 형식의 목록을 반환합니다. | |
GetHashCode | 특정 형식에 대한 해시 함수 역할을 합니다. (Object에서 상속됨) | |
GetSingleExtension<TInterfaceType> | 단일 ExtensionHandle 개체를 반환합니다. | |
GetType | 현재 인스턴스의 Type을 가져옵니다. (Object에서 상속됨) | |
InstantiateType<T>(Type) | 형식을 인스턴스화한 다음 인터페이스로 캐스팅합니다. | |
InstantiateType<T, TProxy>(Type) | 형식을 인스턴스화한 다음 인터페이스로 캐스팅합니다. | |
IsCompatibleWithCurrentProvider | 데이터 서비스 공급자 이름 또는 키를 전달할 경우 이 ExtensionManager에 있는 현재 공급자와 호환되는지 여부를 나타내는 값을 반환합니다. | |
IsExtension<TInterfaceType>(Type) | 현재 인스턴스에 구성을 가지고 있지 않으면서, 제공된 형식과 일치하는 유효한 확장이 있는지 여부를 확인합니다. | |
IsExtension<TInterfaceType>(ExtensionHandle) | 제공된 확장 핸들이 유효하고 현재 ExtensionManager로 로드되는지 여부를 확인합니다. | |
LoadType | DLL에 정의된 위성 형식을 검색하고 로드합니다.이러한 DLL은 GAC(전역 어셈블리 캐시), VS BaseDir 또는 VSTSDB\Extensions 폴더에 있습니다. | |
MemberwiseClone | 현재 Object의 단순 복사본을 만듭니다. (Object에서 상속됨) | |
ToString | 현재 개체를 나타내는 문자열을 반환합니다. (Object에서 상속됨) | |
TryGetSingleExtension<TInterfaceType> | 제공된 제네릭 형식의 단일 확장을 가져오려고 시도합니다. |
위쪽
설명
ExtensionManager 인스턴스는 DatabaseSchemaProvider의 지정된 형식에 연결됩니다. ExtensionManager는 DatabaseSchemaProvider의 인스턴스를 보유하며 이 데이터 서비스 공급자와 호환되는 것으로 지정된 모든 확장 형식을 로드합니다. nullNull 참조(Visual Basic의 경우 Nothing)이 형식으로 지정된 경우 None의 BindingClassification 값을 갖도록 지정된 이러한 확장명이 로드됩니다.
스레드로부터의 안전성
이 형식의 모든 공용 static(Visual Basic의 경우 Shared) 멤버는 스레드로부터 안전합니다. 인터페이스 멤버는 스레드로부터 안전하지 않습니다.
참고 항목
참조
Microsoft.Data.Schema.Extensibility 네임스페이스