Не удалось загрузить файл или сборку Oracle.DataAccess - PullRequest
31 голосов
/ 29 декабря 2011

У меня есть проект asp.net mvc (EF), Я скачал провайдер данных oracle с версией 4.112.2.50 -32bit на свой компьютер при переносе проекта на Windows Server 2008 (у меня такая же версия odp-64bit). У меня проблема ниже:

Не удалось загрузить файл или сборку «Oracle.DataAccess» или одну из ее зависимостей. Была предпринята попытка загрузить программу с неверным формат.

когда я беру Oracle "Oracle.DataAccess.dll" с сервера и делаю это с моей ссылкой на проект У меня есть другое сообщение об ошибке, подобное приведенному выше, с файлом "Oracle.Web"

Не удалось загрузить файл или сборку «Oracle.Web» или одну из ее зависимостей. Была предпринята попытка загрузить программу с неверным формат.

также, если я получаю файл "Oracle.Web.dll" для ссылки на проект с сервера, у меня возникает та же ошибка с "Oracle.Web"

Ответы [ 6 ]

59 голосов
/ 18 июля 2012

В IIS Manager выберите свой сервер и выберите « Пулы приложений ».Выберите пул приложений, используемый вашим веб-приложением, и нажмите « Расширенные настройки » в правом меню.

В « GeneralВ разделе "дополнительных настроек нажмите" Включить 32-разрядные приложения "и установите для него True .

Это исправление применяется только к 64-разрядным серверам, которые пытаются выполнить 32-разрядную версию Oracle Dlls.

С уважением, Джордж

6 голосов
/ 26 февраля 2015

Джордж написал:

В диспетчере IIS выберите свой сервер и выберите «Пулы приложений». Выберите пул приложений, используемый вашим веб-приложением, и нажмите «Расширенные настройки» в правом меню.

В «Общем разделе» дополнительных настроек нажмите «Включить 32-разрядные приложения» и установите для него значение «Истина».

Это исправление применимо только к 64-разрядным серверам, которые пытаются выполнить 32-разрядную версию Oracle Dlls.

Противоположное также верно. Если вы используете 64-битную версию Oracle Dlls, тогда вы должны установить " Включить 32-битные приложения " на false .

- Jacob

3 голосов
/ 29 декабря 2011
  1. Oracle.DataAccess.dll должен быть установлен не только по ссылке.
  2. Измените локальное свойство копирования ссылки на true.
1 голос
/ 29 декабря 2011

Неверный формат указывает на проблему битности.Чтобы заставить сервер работать, измените пул приложений, в котором работает ваша программа, чтобы включить поддержку 32 бит или установить 64-битный клиент Oracle.

0 голосов
/ 15 июня 2016

Удаление папок bin и obj решило мою проблему.

0 голосов
/ 05 сентября 2014

Решение - изменить пул приложений с 64-битного на 32-битный.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...