Compartir a través de


ExtensionManager (Clase)

Mantiene un contexto de la extensión y es responsable de cargar las extensiones. Las extensiones incluyen la instancia de DatabaseSchemaProvider que usa un proyecto de base de datos. Cada proyecto de base de datos mantiene una instancia ExtensionManager única.

Jerarquía de herencia

System.Object
  Microsoft.Data.Schema.Extensibility.ExtensionManager

Espacio de nombres:  Microsoft.Data.Schema.Extensibility
Ensamblado:  Microsoft.Data.Schema (en Microsoft.Data.Schema.dll)

Sintaxis

'Declaración
Public NotInheritable Class ExtensionManager
public sealed class ExtensionManager
public ref class ExtensionManager sealed
[<Sealed>]
type ExtensionManager =  class end
public final class ExtensionManager

El tipo ExtensionManager expone los siguientes miembros.

Constructores

  Nombre Descripción
Método público ExtensionManager Inicializa una instancia de la clase ExtensionManager usando el nombre de tipo calificado de DatabaseSchemaProvider.

Arriba

Propiedades

  Nombre Descripción
Propiedad públicaMiembro estático AllDatabaseSchemaProviderTypes Obtiene una lista de todos los tipos de proveedor de esquema de base de datos disponibles.
Propiedad pública DatabaseSchemaProvider Obtiene la instancia de proveedor de origen de datos asociada.
Propiedad pública Errors Obtiene una colección de solo lectura de errores de la operación de carga si la creación de este administrador desencadenó la carga de tipos.
Propiedad públicaMiembro estático UseVisualStudioInstalledExtensionPaths Obtiene o establece si se van a cargar los archivos extension.xml y los ensamblados de extensión desde las rutas de acceso de extensiones de Visual Studio, además de cualquier ruta de acceso especificada a través de AddExtensionLoadPath().

Arriba

Métodos

  Nombre Descripción
Método públicoMiembro estático AddExtensionLoadPath Agrega una ruta de acceso en la lista de rutas de acceso de carga de extensiones.
Método público Equals Determina si el objeto Object especificado es igual al objeto Object actual. (Se hereda de Object).
Método protegido Finalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object).
Método público GetExtension<TInterfaceType>(Type) Recupera un objeto ExtensionHandle<TInterfaceType> que coincide con el tipo Type proporcionado.
Método público GetExtension<TInterfaceType>(ExtensionHandle) Busca una extensión en el objeto ExtensionManager actual de tipo IExtension y la configuración como el objeto identificado por el valor del parámetro ExtensionHandle.
Método público GetExtension<TInterfaceType>(String, String) Busca una extensión entre las extensiones cargadas en el objeto ExtensionManager actual utilizando el nombre de ensamblado y el nombre de tipo proporcionados.
Método público GetExtensions<TInterfaceType> Devuelve una lista de los tipos de extensión para el tipo de interfaz de extensión proporcionado que se ha cargado correctamente.
Método público GetHashCode Actúa como función hash para un tipo concreto. (Se hereda de Object).
Método público GetSingleExtension<TInterfaceType> Devuelve un objeto ExtensionHandle único.
Método público GetType Obtiene el objeto Type de la instancia actual. (Se hereda de Object).
Método públicoMiembro estático InstantiateType<T>(Type) Crea instancias de un tipo y les da la función de interfaz.
Método públicoMiembro estático InstantiateType<T, TProxy>(Type) Crea instancias de un tipo y les da la función de interfaz.
Método público IsCompatibleWithCurrentProvider Devuelve un valor que indica si pasar un nombre o clave de proveedor de servicios de datos es compatible con el proveedor actual en este objeto ExtensionManager.
Método público IsExtension<TInterfaceType>(Type) Comprueba si se produce una extensión válida que coincide con el tipo proporcionado y que no tiene una configuración en la instancia actual.
Método público IsExtension<TInterfaceType>(ExtensionHandle) Comprueba si el identificador de extensiones proporcionado es válido y está cargado en el objeto ExtensionManager actual.
Método públicoMiembro estático LoadType Busca y carga los tipos de satélite definidos en los archivos DLL.Estos archivos DLL se pueden encontrar en la memoria caché global de ensamblados (GAC), en VS BaseDir o en la carpeta VSTSDB\Extensions.
Método protegido MemberwiseClone Crea una copia superficial del objeto Object actual. (Se hereda de Object).
Método público ToString Devuelve una cadena que representa el objeto actual. (Se hereda de Object).
Método público TryGetSingleExtension<TInterfaceType> Intenta adquirir una extensión única del tipo genérico proporcionado.

Arriba

Comentarios

La instancia ExtensionManager está asociada con un tipo especificado de DatabaseSchemaProvider. ExtensionManager retiene una instancia de DatabaseSchemaProvider y carga todos los tipos de extensión que se especifican como compatible con este proveedor de servicios de datos. Si nullreferencia null (Nothing en Visual Basic) se especifica como el tipo, se cargarán esas extensiones especificadas como si tuvieran un valor BindingClassification de None.

Seguridad para subprocesos

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Vea también

Referencia

Microsoft.Data.Schema.Extensibility (Espacio de nombres)

DatabaseSchemaProvider

BindingClassification

Otros recursos

Extender las características de base de datos de Visual Studio