Установка ODP.NET может быть очень сложной.Есть много вещей, которые могут пойти не так:
- Возможно несоответствие версий (2.111.7.20 против 2.112.1.0 против 2.112.2.0).
- Возможно несоответствиемежду 32 и 64 битами.
- .NET DLL может существовать, но одна из зависимостей не найдена.
Попробуйте сначала проверить несоответствие 32/64 бит.В IIS вы можете настроить, будет ли ваше веб-приложение работать 32- или 64-разрядным.Чтобы проверить это, взгляните на диспетчер задач и посмотрите, имеет ли процесс w3wp.exe метку *32
.Затем перейдите на C:\Windows\Assembly
в проводнике.Это специальный вид, который отображает GAC.Если в последнем столбце строки Oracle.DataAccess указано значение x86, значит оно 32-разрядное.Если он говорит AMD64, то он 64-битный.
В той же строке вы также найдете точный номер версии.Проверьте в VisualStudio, использует ли тот же проект ASP.NET.
Если я не ошибаюсь, основная зависимость Oracle.DataAccess.dll
- OraOps11w.dll
, которая должна быть доступна в каталоге BINКлиентский каталог Oracle.Этот каталог обычно находится через реестр (HKLM\SOFTWARE\ORACLE\ODP.NET\<version>\DllPath
).Убедитесь, что вы смотрите на реестр правильной битности (32 против 64 бит).
Есть еще кое-что, что может пойти.Но здесь они обычно решают проблему.