2009-03-25 7 views
6

J'essaie de déterminer quelle est la meilleure façon de connecter une application ASP.Net (existante) à une base de données Oracle pour lire ses informations de dictionnaire.Comment choisir un fournisseur Oracle pour l'application .Net?

Il y a tout simplement trop de possibilités:

  • MS Data Provider for Oracle (nécessite 8.1.7, espace de noms System.Data.OracleClient)
  • Data Provider for .NET Oracle (EXIGE 9.2, espace de noms Oracle .DataAccess)
  • fournisseur Oracle pour OLE DB
  • MSDASQL et ODBC

Comme mon application actuelle utilise MS SQL Server, d'autres options serait:

  • serveur lié, l'accès via server..user.object
  • serveur lié via OPENROWSET

Il y a quelques questions sur des sujets similaires sur le SO, mais seulement certains ont accepté des réponses.

Quelle est votre expérience avec chacun des pilotes? Quels sont leurs avantages et leurs inconvénients?

Bien sûr, Oracle recommande ODP.Net. L'exigence de la version 9.2 (ou supérieure) est-elle un problème aujourd'hui?

Répondre

6

Je recommande aussi ODP.NET. Choisissez le dernier fournisseur (http://www.oracle.com/technology/tech/windows/odpnet/index.html). Il peut se connecter à une base de données Oracle 9.2 ou à une version plus récente de la base de données.

Le fournisseur de données MS pour Oracle est très limité. Vous ne pouvez pas travailler avec des tableaux par exemple et des types définis par l'utilisateur. Et pourquoi Microsoft fournirait un bon support pour se connecter à Oracle?

Vous pouvez également consulter le fournisseur de devart: http://www.devart.com/dotconnect/oracle/. Il prend en charge le cadre d'entité.

4

Décharge les options OLE DB et ODBC, si vous avez un fournisseur d'accès direct aux données, il n'est pas nécessaire d'utiliser OLE DB ou ODBC.

Je recommande Oracle Data Provider pour .NET.

1

Microsoft vient d'annoncer que c'est deprecating System.Data.OracleClient.

Je pense que vous laisse avec quelques choix (au moins):

  • ODP.Net (gratuit, d'Oracle)
  • DevArt
  • DataDirect

DevArt a également une implémentation de LINQ à Oracle qui pourrait vous intéresser.

Questions connexes