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

Impossibile caricare il file o l'assembly per Oracle.DataAccess in .NET

Ti darò le risposte da ciò che ho appena passato su Windows Server 2008 R2, che è un sistema operativo a 64 bit. La suite di librerie di applicazioni che mi è stata fornita è stata sviluppata utilizzando .net 3.5 x86 con le librerie DLL precedenti e sono rimasto bloccato perché avevo installato i client x64 più recenti da Oracle.

Quello che ho trovato è stato il seguente:installa l'ultimo client x64 da Oracle per Windows Server 2008. Credo che questo sarebbe il client 2.7.0. Quando selezioni l'installazione, assicurati di personalizzare e selezionare le librerie .NET. Configura i tuoi file tnsnames e testa il tuo tnsping rispetto alla tua origine dati.

Quindi, se stai eseguendo un'applicazione a 32 bit, installa la stessa versione del client per 32 bit. Inoltre, segui la stessa routine di installazione e seleziona la stessa home.

Al termine, scoprirai di avere un'unica app/prodotto con due directory client (Client1 e Client2).

Se accedi alla directory windows/assemblies scoprirai di avere un riferimento a Oracle.DataAccess.dll (x2) con uno per x86 e uno per AMD64.

Ora, a seconda se hai sviluppatori o stai sviluppando tu stesso sulla macchina, potresti essere a posto qui, tuttavia, se stanno utilizzando driver meno recenti, devi eseguire un ultimo passaggio.

Passare alla directory app\nome\prodotto\versione\client_1\odp.net\publisher policy\2.x. Sono inclusi qui due file di criteri. utilizzare gacutil /i per installare Policy.2.111.Oracle.DataAccess.dll nella GAC. Ciò reindirizzerà le chiamate ODP di Oracle legacy alle versioni più recenti. Quindi, se qualcuno ha sviluppato con il client 10g, ora funzionerà con il client 11.

Cordiali saluti:alcuni potrebbero installare l'ultimo ODP.NET con 2.111.7.20. Lo stesso client Oracle principale viene fornito con 2.111.7.0 .. Non ho avuto alcun successo con il 7.20 ma non ho problemi con il client 7.0.