Come scegliere un provider di Oracle per l'applicazione Net?
-
22-08-2019 - |
Domanda
Sto cercando di capire che cosa è il modo migliore per collegare un (esistente) applicazione ASP.Net a un database Oracle di leggerne i dati dizionario.
Ci sono semplicemente troppe possibilità:
- Provider MS dati per Oracle (richiede 8.1.7, spazio dei nomi System.Data.OracleClient)
- Oracle Data Provider for .NET (richiede 9.2, namespace Oracle.DataAccess)
- Oracle provider per OLE DB
- MSDASQL e ODBC
Come la mia attuale applicazione utilizza server di MSSQL, altre possibilità sarebbero:
- server collegato, l'accesso via server..user.object
- server collegato tramite OPENROWSET
Ci sono un paio di domande su argomenti simili su così, ma solo alcuni hanno accettato risposte.
Qual è la tua esperienza con ciascuno dei piloti? Quali sono i loro pro e contro?
Naturalmente Oracle raccomanda ODP.Net. È il requisito di versione 9.2 (o superiore) di un problema oggi?
Soluzione
Anche io consiglio ODP.NET. Scegliere l'ultimo provider ( http://www.oracle.com/technology/ Tech / windows / odpnet / index.html ). Può collegarsi con un database Oracle 9.2 o una più recente versione del database.
Il provider MS dati per Oracle è molto limitata. Non si può lavorare con array per esempio e tipi definiti dall'utente. E perché Microsoft fornire un buon supporto per la connessione a Oracle?
È anche possibile controllare il fornitore di Devart: http://www.devart.com/dotconnect / Oracle / . Supporta Entity Framework.
Altri suggerimenti
Dump OLE DB e ODBC opzioni, se si dispone di fornitore di accesso diretto ai dati non v'è alcuna necessità di utilizzare OLE DB o ODBC.
Vi consiglio di Oracle Data Provider for .NET.
Microsoft ha appena annunciato che è ironico System.Data.OracleClient .
Credo che ti lascia con alcune scelte (almeno):
- ODP.NET (gratuito, da Oracle)
- Devart
- DataDirect
Devart ha anche un LINQ to implementazione Oracle che potrebbe essere interessante per voi.