ASP.Net - новая версия кода все еще использует предыдущие сборки? - PullRequest
3 голосов
/ 19 января 2012

Вчера, примерно через два года, мы повторно развернули наше приложение. Код не изменился, но составляющая структура проекта была реорганизована в более мелкие проекты. Казалось, что все хорошо до сегодняшнего дня (в 17.29), один из наших пользователей указал на проблему. Из характера обнаруженной ошибки становится ясно, что вновь развернутое приложение , а не использует новые библиотеки DLL из реорганизованного решения и, скорее, все еще использует старые. Это было подтверждено тем, что я удалил старые библиотеки DLL, которые все еще находились в папке bin развертывания, и понял, что это привело к разрыву приложения.

Я удалил материал под %WINDIR%/Microsoft.Net/Framework/v2.0/Temporary Internet Files, но проблема остается. Я был бы очень признателен, если бы кто-то мог объяснить это и / или предложить постоянное и надежное исправление.

Ответы [ 2 ]

3 голосов
/ 19 января 2012

Мы видели 3 разных сценария, вызывающих именно эту проблему:

1) Кэшированные библиотеки DLL во временных файлах Интернета. Помните, что если вы обновили приложение до .Net 4, этот каталог находится в подкаталоге v4.0.30319.

2) Кэшированные страницы в IIS или в браузере пользователя. Изменение срока действия на веб-сайте на немедленное (хотя бы временно) обычно решает эту проблему.

3) DLL, которые должны были быть обновлены, но не были. Для этого выпуска есть две категории:

a) Версия в библиотеке DLL не была обновлена, поэтому новая версия не была развернута.

b) Развертываемый код был неверно зарегистрирован разработчиком или извлечен на компьютере сборки.

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

0 голосов
/ 05 декабря 2014

У меня была похожая проблема. Иногда отладка работала, а иногда нет. Я обнаружил, что несколько .dll (старых и новых) были загружены в представлении Debug> Windows> Modules. Я выяснил, что у меня было несколько версий .Net Framework в одном решении (.Net 4 и 4.5.1).

Решение: Остановлен IIS, очищены оба .Net framework Временные файлы папок. Убрал раствор. Изменил один проект 4.5.1 обратно на 4 и перестроить. Теперь у меня больше нет проблем.

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