2011-09-21 13 views
10

Ho un progetto che utilizza System.Data.OracleClient al momento e poiché è stato deprecato, quindi voglio passare all'ultima versione di ODP.NET versione per Oracle 11g. Per favore fatemi sapere se la procedura seguente avrebbe funzionato per me o ci sono alcune altre azioni necessarie per farlo funzionare senza errori:Sostituzione di System.Data.OracleClient a Oracle.DataAccess (ODP.NET)

  • Rimuovere il riferimento al System.Data.OracleClient
  • aggiungendo il riferimento alla Oracle.DataAccess dll
  • Sostituzione OracleType enum con OracleDbType e aggiornare i riferimenti a tipi di dati da VarChar a Varchar2 ecc
+0

E, naturalmente, modificare le direttive di utilizzo. Altrimenti, penso che siano specificamente progettati per essere compatibili, quindi puoi prenderlo come un rimpiazzo. –

risposta

14

Non hai praticamente ce l'ha.

Ecco il resoconto scritto di Oracle ho seguito quando si fa questo: http://www.oracle.com/technetwork/topics/dotnet/code-154692.html

Due altre cose da fare:

  1. Fissare la stringa di connessione.

  2. Dì ai tuoi casi OracleCommand si desidera collegare i parametri in base al nome, piuttosto che la posizione, usando OracleCommand.BindByName = true

Suggerimento: Quando si corregge la stringa di connessione, sbarazzarsi di qualsiasi dipendenza da TNSNAMES.ORA mettendo l'intera stringa di connessione nel tuo programma.

+0

Grazie. Lo proverò durante il fine settimana e te lo farò sapere. Non voglio farlo in un giorno della settimana perché se c'è un problema l'intero team soffrirà a causa di questo :) – ria

Problemi correlati