Почему изменения .cshtml не отражаются локально, пока пул приложений не будет перезапущен? Почему сборка моего проекта в Visual Studio перестала перерабатывать пул приложений? - PullRequest
0 голосов
/ 13 мая 2019

Я занимаюсь разработкой веб-приложения MVC на C #. Когда я использовал для сохранения представления (.cshtml) какие-либо базовые изменения HTML или CSS, мне нужно было только обновить страницу, чтобы увидеть мои изменения. Теперь я не вижу их отражения локально, пока не перезапущу пул приложений IIS.

Это может быть отдельной проблемой, но сборка приложения используется для переработки пула приложений. Сегодня, когда я собираю приложение и тестирую его, я не вижу изменений в контроллерах, пока не выполню ручную перезапуск пула приложений. Я знаю, что пул приложений не перерабатывается при сборке, потому что я остаюсь в системе.

Я не знаю каких-либо изменений, внесенных в проект. Возможно, другой член команды что-то изменил. Что могло измениться? Где мне сначала проверить?

Ответы [ 2 ]

2 голосов
/ 13 мая 2019

Вы проверили, что ваш браузер не кэширует сайт так, что вы не увидите небольших изменений? Здесь я бы проверил в первую очередь. Я заметил, что большую часть времени, когда я не вижу свои изменения, это связано с тем, что браузер кэширует мой сайт, поэтому я не вижу свои изменения.

Обычно я избегаю этой проблемы с помощью:

  • Открытие инструментов разработчика в браузере
  • Отключить кэширование,
  • Обновить,
  • (опционально) Включите его снова, если у вас должно быть включено кэширование для проверки ваших изменений.

Стоит отметить, что если ваши библиотеки DLL не меняются при сборке или IIS не обнаруживает изменений в файлах, которые он размещает, он не будет автоматически перезагружать пул приложений. Однако это не похоже на проблему, поскольку вы говорите, что ожидаете изменений в контроллерах.

Маловероятно, но не невозможно, чтобы другой член команды изменил настройку, которая повлияет на IIS. Возможно, вы сможете проверить параметры конфигурации для IIS, но, скорее всего, проблема связана с кэшированием в браузере.

1 голос
/ 14 мая 2019

Кто-то из команды добавил fcnMode = "Disabled" в наш тег httpRuntime в файле web.config. Удаление локально исправило проблему, с которой я столкнулся.

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

...