Oracle
 sql >> Database >  >> RDS >> Oracle

Come scrivere un'applicazione .Net che funzioni sia con SqlServer che con Oracle (ora che System.Data.OracleClient è deprecato)

EDIT:ODP.NET completamente gestito è ora disponibile in produzione. È molto piccolo (meno di 10 MB) e non dipende da altri file. Puoi ottenerlo qui:

http://www.oracle.com/technetwork/topics/dotnet/downloads/index.html

Risposta originale:

Un modo per facilmente assicurarsi che il software lato client Oracle richiesto (incluso ODP.NET) sia sempre disponibile sulla macchina di distribuzione è incorporarlo con l'applicazione. ODP.NET ha ottenuto molto molto più facile da incorporare ora che XCOPY ODP.NET è disponibile. Puoi scaricarlo da questo link:

http://www.oracle.com/technology/software/tech/windows/odpnet/index.html

Con XCOPY ODP.NET, tutto ciò che devi fare quando distribuisci la tua applicazione è quanto segue:

1) Copia la tua applicazione sulla macchina di destinazione

2) Esegui "install.bat" che copia un paio di DLL Oracle sul computer di destinazione (incluso ODP.NET e il software Oracle lato client (OCI))

3) Esegui "configure.bat", che esegue un "gacutil" e aggiorna il registro della macchina di destinazione

4) Fornisci alla tua applicazione le informazioni sulla stringa di connessione. Puoi utilizzare la stringa di connessione EZCONNECT ("[email protected]") oppure tu (o il tuo cliente) potete condividere configurazioni sqlnet preesistenti impostando la voce del registro TNS_ADMIN o la variabile di ambiente in modo che puntino a un'altra home Oracle con alias sqlnet già configurati .

Questo è tutto! È davvero così semplice.

Spero che darai una buona occhiata a ODP.NET XCOPY nel link sopra per vedere di persona quanto sia facile in questi giorni incorporare ODP.NET con la tua app.

Note aggiuntive:

Se scegli di non incorporare ODP.NET con la tua applicazione, sia nel caso di Microsoft OracleClient che nel caso di ODP.NET, è necessario che sia installato un software Oracle lato client (OCI) aggiuntivo su qualsiasi macchina di distribuzione. L'unica differenza tra i due casi è che quando si utilizza ODP.NET, deve esistere anche nel computer di distribuzione. La buona notizia è che una tipica installazione Oracle sul computer del cliente includerà già ODP.NET.

Ora, se la tua macchina di destinazione ha già installato ODP.NET, non devi fare nient'altro. Devi solo distribuire la tua applicazione. Se hai bisogno di installare ODP.NET usando il programma di installazione standard, puoi anche scaricarlo dal link fornito sopra. L'installazione standard di ODP.NET richiede solo pochi minuti e configura tutto per te.

E ancora, puoi utilizzare le stringhe di connessione EZConnect per rendere la configurazione di rete un gioco da ragazzi, oppure utilizzare la voce di registro TNS_ADMIN o la variabile di ambiente per sfruttare gli alias di connessione preesistenti a cui il tuo cliente è già abituato.

Spero che questo aiuti,

Christian Shay

Oracolo

Sentiti libero di fornire il tuo feedback su questa e altre funzionalità future sul nostro sito Web per la richiesta di funzionalità:http://apex.oracle.com/pls/apex/f?p=18357:46