2016-04-05 3 views
1

Добавление пакета nuget Oracle.ManagedDataAccess в проект ASP.NET MVC блокирует web.config после восстановления.Oracle.ManagedDataAccess nuget блокирует блокировки web.config после восстановления

Шаги для воспроизведения:

  • для Windows 10 64 бит
  • Microsoft Visual Studio Professional 2015 Версия 14.0.24720.00 Update 1
  • Создать новый проект MVC (ASP.NET MVC 4.5.2 шаблоны, оставьте «Добавить проверку приложений для проекта», отметьте флажок «Хостинг в облаке» и измените аутентификацию на проверку подлинности Windows)
  • Внутри проекта открыть web.config и оставить его открытым
  • Перейти к «M anage NuGet Пакеты ...»
  • Установите Oracle.ManagedDataAccess NuGet пакет 12.1.2400
  • Rebuild ваше решение
  • Теперь попытайтесь внести изменения в web.config и сохранить его >>> воспитывает Сохранить в диалоге, потому что ваш web.config теперь заблокирован какой-то процесс

Не уверен, что, если нужны все эти шаги, чтобы воспроизвести эту блокировку web.config, но это, как я могу воспроизвести его. Ни один другой пакет nuget, который я использую, не воспроизводит это.

Единственный способ избежать этого - удалить упаковку. Есть ли другой способ сохранить этот пакет, а не заблокировать web.config?

EDIT

Чтобы разблокировать web.config не только нужно удалить пакет, но и удалить все ссылки на этот пакет в web.config. Если я не удаляю ссылки в web.config, он все равно блокируется, несмотря на удаление пакета из менеджера пакетов gui.

+0

Да, я видел, как это случалось пару раз. В обоих случаях мне приходилось останавливать/запускать пул приложений или сам сервер IIS, чтобы возобновить редактирование. – cableload

+0

IIS не участвует в действиях по воспроизведению. Бывает независимо. – joym8

+0

Что поможет вам устранить проблему блокировки? Поддерживает ли web.config только чтение? – cableload

ответ

1

Это то, что работает для меня:

Шаг 1: Создать фиктивный проект и добавить Oracle.ManagedDataAccess пакет NuGet. Скопируйте папку пакета из \ your_solution \ packages \ Oracle.ManagedDataAccess.12.1.2400 в другое место.

Шаг 2: В вашем реальном проекте удалите пакет Oracle.ManagedDataAccess. Удалите все ссылки на этот пакет/dll из web.config. Добавьте Oracle.ManagedDataAccess.dll из скопированной папки на этапе 1.