2011-01-28 15 views
7

En los buenos viejos tiempos de oledb utilicé los archivos UDL y el asistente relacionado para verificar y crear cadenas de conexión. Hoy en día, las cadenas de conexión que puede crear de esta manera ya no son tan universales. ADO.NET Entity Framework, por ejemplo, crea cadenas de conexión decoradas que el asistente de UDL no puede manejar. ¿Hay alguna herramienta para crear los enlaces de datos universales de hoy?¿Dónde están los enlaces de datos realmente universales?

+2

¡Qué interesante! Es como si fuera solo poof. No se puede encontrar nada que diga que está obsoleto o en desuso. – Amy

Respuesta

3

Creo que hay una diferencia entre:

  • El herramienta que ayuda a crear cadenas de conexión (el que aparece cuando se hace doble clic sobre el archivo .UDL). Esta herramienta está basada en COM y reside en Ole32.dll y sigue funcionando.
  • El concepto de una cadenas de conexión que nunca ha cambiado. (es tan simple: una lista de pares clave/valor!)

Las cadenas de conexión de hoy (es decir: .NET?) no son menos universales que las cadenas de conexión OleDb. Siempre son específicos para un proveedor determinado. Los pares clave/valor pueden no ser los mismos, pero el concepto siempre está ahí.

La herramienta UDL funciona utilizando objetos COM y todavía se puede usar. Por ejemplo, se podría escribir una extensión a la herramienta UDL para las cadenas de conexión de Entity Framework. Aquí hay un enlace en la referencia oficial: archivos Provider Extensible Data Link User Interface API

.UDL son usables en .NET (con P/Invoke) usando IDBPromptInitialize e interfaces de IDataInitialize OleDb, aunque estoy de acuerdo, no parece tan natural en estos días :)

3

Un “enlace de datos” universal no puede soportar todos funciones de todos bases de datos de proveedores/versiones, más software está escrito en casa por las empresas para hablar con sus bases de datos de las casas, por lo no es necesario ser base de datos independiente.

Es más difícil codificar contra una API que no es una buena combinación para las funciones que proporciona su base de datos elegida ya que la documentación nunca parece coincidir con la base de datos que está tratando de utilizar.

Microsoft ahora espera que el proveedor de la base de datos proporcione el soporte de acceso a datos Ado.net para la base de datos, por lo tanto el acceso a datos tiende a ser diferente para cada base de datos - pero a la mayoría de las personas no les importa ya que el código solo necesita funcionar con una única base de datos vender.

Hay opciones de terceros como devArt's dotConnect y DataDirect que proporcionan un "enlace de datos" universal para .net pero a un precio.

nHibernate se ubicará en la parte superior de la capa de acceso a la base de datos .net de los vendedores y ocultará la mayoría de las diferencias si está contento de usar un ORM.

Cuestiones relacionadas