Сайт запускает кешированный dll как-то после его изменения - PullRequest
13 голосов
/ 19 апреля 2011

Ситуация в том, что я исправил небольшую ошибку в классе, поэтому они хотят просто развернуть затронутую dll.Они остановили IIS, заменили dll в папке / bin каталога iis для веб-сайта новым, который я им дал, и снова запустили iis.Есть несколько серверов, но они просто поменяли его на одном, чтобы попробовать.Они все еще видят ту же ошибку в журнале событий рассматриваемого сервера.Глядя на трассировку стека, я могу сказать, что он запускает старую DLL.

Они проверили GAC и не видят его там.

Я проверил dll с отражателем дляубедитесь, что я дал им правильную новую DLL.

Это веб-сайт asp.net 2.0 и сервер 2003. Я не уверен, как он был развернут изначально, но у него есть копия старой библиотеки DLL в C: \ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 \ Временные файлы ASP.NET \ NAME_services ################# \ assembly \ dl3 ################### \ и в D: \ xxxx \ Sites \ NAME \ Services \ obj \ Release.Может ли это быть использование одного из них или создание старого или даже просто кэширование его в памяти?

Ответы [ 3 ]

13 голосов
/ 19 апреля 2011

Уничтожьте содержимое вашей временной папки asp.net. Не уверен, почему обновление не скомпилировалось автоматически.

3 голосов
/ 04 октября 2016

У нас была та же проблема, но с небольшими сложностями, у нас много сайтов, поэтому «очистка всех временных» и перезапуск IIS не являются хорошим вариантом для нас.Поэтому нам нужно было более избирательно подходить к тому, что делать обновление.

На нашей машине контроля качества, под ... "C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Temporary ASP.NETФайлы «Я проверил файловый менеджер по частичному имени файла того, что мы пытаемся выпустить.Файл был найден в папке, например: C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Temporary ASP.NET Files \ root \ 4503212x \ ad95664x, поэтому я остановил пул приложений, удалил папку, перезапустил и всебыл развернут тогда - отлично!

Но .... У нас возникли те же проблемы при развертывании в производство, и вышеописанное не сработало.

Короче говоря, пул приложений QA был установлен на "enable 32 bit true", ноДля параметра production задано значение «False», поэтому временные файлы prod находятся в папке «C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319» (\ Framework64 \ вместо \ Framework \).

Если очистка временных файлов не работает - дважды проверьте свои каркасы или найдите файлы для обновления на уровне папки C: \ Windows \ Microsoft.NET и ниже.Вы можете быть удивлены.

0 голосов
/ 19 апреля 2011

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

Кроме того, если они скопировали только DLL, но ваше исправление было в файле .aspx, тогда оно победило 'не показывайВы действительно должны сделать полное развертывание.

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