registrar un proveedor Registro-Basado de DDEX
Puede implementar un proveedor de DDEX que no se base en un paquete y proporcionar la compatibilidad en tiempo de diseño básica mediante el Registro de Windows para identificar el proveedor y para buscar la base de código adecuado.
El escenario Registro-Basada
A diferencia de DDEX 1,0, en la nueva versión de DDEX el proveedor registro-basado no se restringe a los proveedores de ADO.NET y no admite todos los tipos de proveedores. Sin embargo, la implementación más común del proveedor de DDEX implica un proveedor de ADO.NET que sólo requiere la compatibilidad en tiempo de diseño básica. Por ejemplo, la aplicación necesite proporcionar alguna interfaz de usuario de la conexión a un origen (UI) de datos, pero no hace nada complejo, como proporcionar diseñadores personalizados. En este caso, una implementación completa de un VSPackage no es necesario. En su lugar, puede proporcionar referencias explícitas a los componentes de proveedor mediante el Registro de Windows.
registrar el proveedor
Para registrar la implementación de un proveedor que no se base en un paquete, haga lo siguiente:
1.Genere el GUID del proveedor de DDEX
GUID proporciona un identificador único para el proveedor en el contexto de la aplicación.
2.Agregue GUID en la clave del Registro
Escriba el proveedor GUID en la clave de DataProviders del subárbol local del registro de la aplicación. Esta entrada podría tener el aspecto siguiente:
HKLM \SOFTWARE\Microsoft\VisualStudio\9.0\DataProviders \ {11111111-1111-1111-1111-111111111111}
3.Agregue los valores a la clave
Agregue los valores adecuados de proveedor de DDEX a la clave del Registro de DataProviders. La clave contiene siete campos, como sigue:
(Valor predeterminado) |
Nombre del proveedor (para fines de registro). |
AssociatedSource |
GUID del origen de datos que este proveedor de DDEX es asociado. |
CodeBase |
La ruta de acceso al archivo de ensamblado del proveedor de DDEX. Por ejemplo, este campo se puede establecer en “C: \MyDDEXProvider\bin\Debug\ProviderWithUICustomization .dll”. |
Descripción |
Puntero a un recurso de cadena en un ensamblado que contiene una descripción para el proveedor, con el formato “StringName, ResourceName, ensamblado”. Si el valor de ensamblado no se especifica, los valores predeterminados de implementación al ensamblado especificado por el valor de código base. |
DisplayName |
Puntero a un recurso de cadena en un ensamblado que contenga un nombre para mostrar del proveedor, con el formato “StringName, ResourceName, ensamblado”. Si el valor de ensamblado no se especifica, los valores predeterminados de implementación al ensamblado especificado por el valor de código base. |
InvariantName |
El nombre invariable del proveedor de ADO.NET . |
PlatformVersion |
La versión del componente de DDEX utilizado. Utilice “2,0 " para Visual Studio SDK 2008, o “1,0 " para Visual Studio 2005 SDK. |
ShortDisplayName |
Puntero a un recurso de cadena en un ensamblado que contenga un nombre para mostrar corto del proveedor, con el formato “StringName, ResourceName, ensamblado”. Si el valor de ensamblado no se especifica, los valores predeterminados de implementación al ensamblado especificado por el valor de código base. |
Tecnología |
GUID que especifica la tecnología de ADO.NET : {77AB9A9D-78B9-4ba7-91AC-873F5338F1D2} |
4.especifique los objetos admitidos
Los proveedores de DDEX también deben incluir en el registro una indicación cuyo los objetos en admiten. Deben hacerlo por dos motivos:
El motor de DDEX, así como los clientes, deben poder determinar las capacidades de un proveedor determinado sin tener que cargar el ensamblado del proveedor.
En algunos casos, es necesario que el proveedor proporciona información sobre cómo crear instancias o implementar uno o más de los objetos admitidos.
Para indicar los objetos admitidos, un proveedor debe hacer lo siguiente:
Agregue una clave de SupportedObjects bajo la clave del proveedor de DDEX en el registro.
Agregue una clave del Registro para cada uno de los objetos admitidos por el proveedor de DDEX. Aunque no haya objetos necesarios, se recomienda agregar los dos objetos siguientes para que el proveedor es significativo:
IVsDataConnectionProperties. Implementado mediante la clase de DbConnectionStringBuilder .
IVsDataConnectionSupport. Implementado mediante la interfaz de IDbConnection y las características de la clase de DbConnection , cuando esté disponible.
Agregar teclas adicionales para los objetos admitidos adicionales. Para cada uno de ellos, proporcione el nombre de un tipo administrado que proporciona la implementación como valor predeterminado de la clave. Este nombre automáticamente con ámbito en el ensamblado especificado por el valor de código base, pero también puede ser un nombre de tipo completo incluso los detalles del ensamblado. Los siguientes son teclas adicionales que puede especificar para los objetos admitidos adicionales:
IVsDataConnectionPromptDialog
IVsDataConnectionProperties
IVsDataConnectionSupport
IVsDataConnectionUIControl
IVsDataObjectIdentifierConverter
IVsDataObjectIdentifierResolver
IVsDataObjectMemberComparer
IVsDataObjectSupport
IVsDataSourceInformation
IVsDataViewSupport
Observe que las teclas de IVsDataObjectSupport y de IVsDataViewSupport proporcionan la ubicación de los archivos XML respectivos. (Vea Compatibilidad con el objeto de datos de DDEX y Compatibilidad con la vista de datos de DDEX para obtener más información.) Éstos se pueden especificar directamente, como una ruta a una ubicación del archivo en el disco, o como un puntero a un recurso en un ensamblado especificado. Esto elimina la necesidad de implementar estas clases para proporcionar manualmente una secuencia XML.
Observe, también, que para la clave de DataSourceInformation, puede insertar varios pares de nombre/valor. Éstos pueden proporcionar información sobre el origen de datos estático directamente, sin necesidad de proporcionar código para implementar la clase de DataSourceInformation.
5.Asigna a un origen de datos
Los proveedores de DDEX pueden estar asociado a los orígenes de datos mediante las entradas del Registro bajo la clave de DataSources en el subárbol local del registro de la aplicación, por ejemplo, HKLM \SOFTWARE\Microsoft\VisualStudio\9.0\DataSources de DDEX.
Cada origen de datos de DDEX tiene GUID de identificación, junto con nombre para mostrar correspondiente y cadenas de descripción proporcionados por un proveedor que admite.
Para un nuevo origen de datos, debe hacer lo siguiente:
Cree un identificador de GUID para el origen de datos y colóquelo en el registro con DataSources.
Agregue un valor de DefaultProvider a esta clave, cuyo valor es el GUID del proveedor predeterminado DDEX para el origen de datos.
Para los orígenes de datos existentes y los nuevos orígenes de datos, debe hacer lo siguiente:
En clave de DataSources, cree una clave de SupportingProviders y rellenarla de una subclave para cada proveedor de DDEX que admita el origen de datos.
Para uno o más (mínimo uno) de las subclaves de proveedor de DDEX, especifique un valor DisplayName en exactamente el mismo formato que escribió por valor DisplayName bajo la clave correspondiente del proveedor de DDEX.
Para cada proveedor que admite, proporcione opcionalmente un valor description en el mismo formato que se indica que el valor de la descripción del proveedor correspondiente de DDEX. Esta cadena de descripción debe combinar el origen de datos seleccionado y el proveedor de datos en una instrucción única, significativa, por ejemplo, “utiliza esta selección para conectarse a un origen de datos de Microsoft Access mediante el proveedor nativo de Jet a través del proveedor de datos de .NET Framework para OLE DB.”
Vea también
Conceptos
registrar un proveedor Paquete-Basado de DDEX
Registrar un proveedor Especializados de DDEX para OLE DB
Registrar un proveedor Especializados de DDEX para ODBC