Instalacja ODP.NET może być bardzo trudna. Jest wiele rzeczy, które mogą pójść nie tak:
- Możesz mieć niezgodność wersji (2.111.7.20 vs 2.112.1.0 vs 2.112.2.0).
- Możesz mieć niezgodność między 32 a 64 bitami.
- Dll .NET może istnieć, ale jedna z zależności nie została znaleziona.
Spróbuj najpierw sprawdzić niezgodność 32/64 bitów. W usługach IIS można skonfigurować, czy aplikacja sieci Web ma działać w wersji 32-, czy 64-bitowej. Aby to sprawdzić, spójrz na menedżera zadań i sprawdź, czy proces w3wp.exe ma *32
znak. Następnie przejdź do C:\Windows\Assembly
w eksploratorze plików. To specjalny widok, który wyświetla GAC. Jeśli w ostatniej kolumnie w wierszu Oracle.DataAccess jest napisane x86, oznacza to, że jest to 32 bity. Jeśli jest napisane AMD64, oznacza to 64-bitowy.
W tym samym wierszu znajdziesz również dokładny numer wersji. Sprawdź w VisualStudio, czy projekt ASP.NET używa tego samego.
Jeśli się nie mylę, główna zależność Oracle.DataAccess.dll
to OraOps11w.dll
, który powinien być dostępny w katalogu BIN katalogu klienta Oracle. Ten katalog jest zwykle zlokalizowany w rejestrze (HKLM\SOFTWARE\ORACLE\ODP.NET\<version>\DllPath
). Upewnij się, że patrzysz na rejestr o prawidłowej bitowości (32 vs 64 bity).
Jest więcej rzeczy, które można zrobić. Ale te tutaj zazwyczaj rozwiązują problem.