Personalizado .RED de Proveedores de Datos
-
13-11-2019 - |
Pregunta
Es posible utilizar una costumbre .NET proveedor de datos sin la necesidad de instalarlo en el GAC?
Puedo hacer referencia a un archivo DLL personalizado y registrarlo dentro de mi archivo de configuración?
Solución
Sí, usted puede registrar una aplicación de la DbProviderFactory clase mediante la adición de la siguiente sección en su archivo de configuración:
<system.data>
<DbProviderFactories>
<add name="My Custom Data Provider"
invariant="MyCustomDataProvider"
description="Data Provider for My Custom Store"
type="MyNamespace.MyCustomProviderFactory, MyCustomDataProvider, Version=1.0.0.0, Culture=neutral, PublicKeyToken=" />
</DbProviderFactories>
</system.data>
El MyCustomDataProvider
la asamblea no tiene que ser registrado en el GAC, pero puede ser implementado junto con la aplicación como un conjunto privado.
Puede referirse a la registrada en el proveedor de datos mediante programación utilizando el valor especificado en el invariant
atributo.Por ejemplo, usted podría decir ADO.NET el uso de la MyNamespace.MyCustomProviderFactory
mediante la especificación de MyCustomProvider
como el providerName
en la cadena de conexión:
<connectionStrings>
<add name="ConnString"
providerName="MyCustomProvider"
connectionString="MyCustomConnectionString" />
</connectionStrings>
En el código, puede utilizar el mismo nombre de proveedor con el DbProviderFactories.GetFactory método:
DbProviderFactory factory = DbProviderFactories.GetFactory("MyCustomDataProvider");
donde factory
será una instancia de la MyNamespace.MyCustomProviderFactory
clase.