Возможно, я задаю не тот вопрос здесь, я готов изменить его, если так.
У меня есть проект, который использует провайдера Microsoft.NET Oracle (наш план состоит в том, чтобы перейти на ODP, но мы еще не сделали этого).
Я пытаюсь получить этот проект для сборки на сервере сборки Windows 2008 (x64). Он прекрасно работает, но наши модульные тесты не работают, когда они попадают в базу данных Oracle.
Первоначально я установил 32-битный клиент oracle 9i, который мы сейчас используем на наших устройствах winxp dev и на предыдущем сервере сборки 2003 года. Но теперь появляется следующее сообщение: Попытка загрузить клиентские библиотеки Oracle вызвала исключение BadImageFormatException. Эта проблема возникает при работе в 64-битном режиме с установленными 32-битными клиентскими компонентами Oracle.
Мы попытались скомпилировать на платформе x86, но это не изменило сообщение об ошибке.
Теперь у меня установлен 11g 64-битный клиент, но я получаю сообщение о том, что System.Data.OracleClient требует клиентского программного обеспечения Oracle версии 8.1.7 или выше.
Так какую установку Oracle я должен использовать?
Edit:
Я смог заставить это работать. Оказалось, что именно тестирование вызвало проблему, заставив NUnit работать в 32-битном режиме: http://geekswithblogs.net/Lance/archive/2006/12/28/102191.aspx Я смог заставить тесты работать, используя старый 32-битный драйвер. Это был бы дерьмовый ответ на вопрос, поэтому я им не пользуюсь, но с удовольствием предоставлю правильный ответ всем, кто внесет полезную информацию о переходе на 64-битные драйверы Oracle.