У меня есть приложение ASP.NET Web Forms, которое я создаю и использую для .NET 4.0 на локальном компьютере с Win7.(На локальном блоке все в порядке.) Мое приложение работает с EF4.1 для базы данных Oracle, поэтому я использую провайдер данных Oracle EF, который все еще находится в бета-версии.
Сейчас я могу успешно развернутьприложение на моей целевой машине Win2008 Server, используя Web Deploy с моего локального VS2010, но когда я запускаю приложение на целевой машине, я получаю классическую ошибку Unable to find the requested .Net Framework Data Provider
.
Вот мой (неудачно) *Настройка 1007 *, на данный момент:
Для 32-битных приложений включено в пуле приложений (.NET 4.0) на целевом сервере Win2008.
Копировать локальный установлен в true для Oracle.DataAccess
DLL в моем локальном решении VS2010.
Обе платформы и Целевые значения платформы установлены на Любой ЦП в моей локальной конфигурации сборки.(Я пробовал разные настройки здесь безуспешно.)
Цель сервера Win2008 действительно не имеет Oracle.DataAccess
DLL в GAC.(Я думал, что установка Copy Local в Oracle DLL будет означать, что мне не нужен GAC.)
EDIT : Я пытался GAC Oracle.DataAccess
DLL, но я получаю ту же ошибку, которая обсуждается здесь .(Я все еще должен исследовать это.) Кроме того, на моем целевом компьютере уже есть другой клиент Oracle, и установка клиента Oracle, поставляемого с поставщиком данных Oracle EF, кажется, мешает ему.Этого нельзя допустить.
Вопрос 1 : Какую комбинацию параметров конфигурации сборки (в локальном окне) и параметров IIS (в цели) мне нужно выбрать, чтобыбыть в состоянии запустить мое приложение на сервере 2008?
Вопрос 2 : Как я могу заставить это работать без установки другого клиента Oracle на моем целевом сервере?
Еще раз спасибо за помощь.
Обновление: все работает .Смотрите мой ответ ниже для ссылки на полное решение, а также ссылки на полезную информацию.