Подтвердить что ты не робот

Не удалось загрузить файл или сборку. Ошибка Oracle.DataAccess.

Я создаю приложение ASP.NET с С#, и я хочу подключиться к базе данных oracle.
Я добавил ссылку на Oracle.DataAccess в моем приложении на моем 64-битном компьютере Microsoft Window Server 2008. Я также установил ODAC (Oracle Data Access Component) на свою машину и Oracle.DataAccess.dll также присутствует на этом пути

C:\Windows\Microsoft.NET\сборка\GAC_64\Oracle.DataAccess

но когда я пытаюсь подключиться, я сталкиваюсь с следующей ошибкой:

Не удалось загрузить файл или сборку 'Oracle.DataAccess, Version = 4.112.3.0, Culture = neutral, PublicKeyToken = 89b483f429c47342' или одну из его зависимостей. Система не может найти указанный файл.

4b9b3361

Ответ 1

Насколько мне известно, сборка Oracle.DataAccess работает только с 32 битами, у меня также есть такая проблема с 64 битами, и она действительно не работает. Моим решением было удалить 64 бит из GAC и установить 32 бит на GAC. Я также удаляю любой DLL файл в папке bin, чтобы мое приложение находило сборку на GAC.

Нет проблем, если ваша машина и операционная система имеют 64 бита, 32-битная версия будет работать нормально.

UPDATE

Я рекомендую вам взглянуть на Official Oracle ODP.NET, Managed Driver, что является лучшей версией, чем Oracle.DataAccess. Для этого Managed Driver не требуется Oracle Client на машине, и вам просто нужно предоставить TNS в поле DataSource connection string, и он отлично работает для бит 32 и 64.

Ответ 2

Вам нужно установить как x64, так и x86 версии Oracle, потому что что-то (я думаю, это Visual Studio) использует версию x86 при отладке.

Ответ 3

по существу такая же ошибка

отсутствуют компоненты установки ODP.NET в соответствии с последним сообщением от меня и другого участника ответа.

Вы еще проверите GAC?

Если вы не видите папки Oracle.xxx,

вы не продвигаетесь вперед.

поместите правильную версию и бит Oracle.DataAccess.dll в папку application/BIN и сделайте локальную ссылку. Это решает многие проблемы.

Ответ 4

Чтобы запустить ваш сайт, вы должны использовать IIS, поскольку сервер разработки Visual Studio работает только в 32-разрядном режиме.
В пуле приложений IIS настройте приложение на 64 бит. (Настройки находятся в расширенных настройках)

Ответ 5

В VS2010 я изменил цель платформы на x64, и это сообщение об ошибке исчезнет.

Ответ 6

Чтобы устранить эту ошибку, я установил свой пул приложений в IIS, чтобы разрешить 32-разрядные приложения. Откройте Диспетчер IIS, щелкните правой кнопкой мыши на пуле приложений и выберите "Дополнительные параметры" → "Включить 32-разрядные приложения" в значение "Истина". Он отлично работает для меня.