Различные версии ODAC, вызывающие ошибку в приложении C # (локальный сервер) - PullRequest
0 голосов
/ 13 декабря 2018

Я создал приложение, используя C #.Я ссылался на версию ODAC 4.121.2.0.Когда я развернул свое приложение на сервере, приложение завершилось ошибкой:

Необработанное исключение: System.BadImageFormatException: не удалось загрузить файл или сборку 'Oracle.DataAccess, версия = 4.121.2.0, культура= нейтральный, PublicKeyToken = 89b4 83f429c47342 '.Эта сборка была скомпилирована для другого процессора.

На сервере установлена ​​только 4.121.1.0.

Что мне нужно сделать, чтобы приложение работало?Вещи, которые я пробовал:

 1. In the .csproj <SpecificVersion>False</SpecificVersion>

 <Private>False</Private>

 2. I tried copying over the ODAC version (4.121.2.0) in the bin solution directory(of the server), it wouldn't work.
 3. I tried removing all ODAC dlls in folder, so that it can find out older version and use that for functionality.

Я не хочу устанавливать более старую версию на свой локальный компьютер, а затем - я пробовал это в прошлом, и в итоге я удалил все версии.

Возможнодубликаты: Наличие двух версий ODP.NET (ODAC) на одном сервере

Как заставить более старую версию OracleClient работать локально с .NET? oracleclient-to-work-localally-with-net

Но эти ссылки не дали решения моей проблемы.

1 Ответ

0 голосов
/ 13 декабря 2018

Я думаю, что ваша ошибка не связана с проблемой управления версиями зависимостей.BadImageFormatException обычно выбрасывается при несовместимости 32Bit / 64Bit между точкой входа (например, exe файл) и одной из зависимостей.

Попробуйте поиграть с целевой платформой при компиляциипроект (ы) (Any CPU / x86 / x64 и свойство проекта Prefer 32-Bit).

Надеюсь, это поможет!

...