2009-03-25 14 views
6

Estoy tratando de averiguar cuál es la mejor manera de conectar una aplicación ASP.Net (existente) a una base de datos Oracle para leer su información del diccionario.¿Cómo elegir un proveedor de Oracle para la aplicación .Net?

Simplemente hay demasiadas posibilidades:

    Proveedor
  • MS de datos para Oracle (requiere 8.1.7, System.Data.OracleClient espacio de nombres)
  • Proveedor
  • de datos de Oracle para .NET (requiere 9.2, Oracle espacio de nombres .DataAccess)
  • proveedor de Oracle para OLE DB
  • MSDASQL y ODBC

Como mi aplicación actual utiliza EM servidor SQL, otras opciones sería: Servidor

  • Vinculado, acceso a través de server..user.object
  • servidor vinculado a través de OPENROWSET

Hay un par de preguntas sobre temas similares en el SO, pero solo algunos han aceptado respuestas.

¿Cuál es su experiencia con cada uno de los controladores? ¿Cuáles son sus pros y contras?

Por supuesto, Oracle recomienda ODP.Net. ¿El problema de la versión 9.2 (o superior) es un problema hoy en día?

Respuesta

6

Yo también recomiendo ODP.NET. Elija el último proveedor (http://www.oracle.com/technology/tech/windows/odpnet/index.html). Se puede conectar con una base de datos Oracle 9.2 o una versión más reciente de la base de datos.

El MS Data Provider for Oracle es muy limitado. No puede trabajar con matrices, por ejemplo, y tipos definidos por el usuario. ¿Y por qué Microsoft proporcionaría un buen soporte para conectarse a Oracle?

También puede consultar el proveedor de devart: http://www.devart.com/dotconnect/oracle/. Es compatible con el marco de la entidad.

4

Vuelque las opciones OLE DB y ODBC, si tiene un proveedor de acceso directo a datos no es necesario utilizar OLE DB u ODBC.

Recomiendo Oracle Data Provider for .NET.

1

Microsoft acaba de anunciar que es deprecating System.Data.OracleClient.

Creo que te deja con pocas opciones (por lo menos):

  • ODP.NET (libre, de Oracle)
  • DevArt
  • DataDirect

DevArt tiene también una implementación de LINQ to Oracle que podría ser interesante para usted.

Cuestiones relacionadas