Сервер разработки Visual Studio не обновляет css и javascript?
недавно я вернулся к проекту веб-сайта, который был на заднем плане. С момента возобновления работы я заметил, что изменения css и javascript не распознаются приложением, когда оно работает на сервере разработки Visual Studio. Раньше это работало нормально. Я мог бы изменить таблицы стилей и javascript и запустить приложение и тест. Теперь единственный способ проверить приложение-опубликовать его на локальном сервере IIS (хотя я считаю, что перезапуск моего ПК также исправляет проблема.)
Использование Visual Studio 2008 (9.0.30729.1)
вещи, которые изменились, так как я уверен, что он работал правильно, это операционная система, от Vista x64 Home Premium Edition до Win 7 x64 Ultimate, и я переместил источник Проекта С c: на d:. Хотя я вернулся к C: с теми же отрицательными результатами. Я также переместил некоторые функции в отдельные службы WCF, размещенные консольными приложениями (два узла службы), которые помещаются в отладку, когда веб-сайт запускается в debug.
остановка dev-сервера ничего не делает. Проверка (с помощью VSS 2005) всех файлов, чтобы убедиться, что ничего не читается, ничего не делает. Единственное, что работает, это публикация в IIS или перезапуск моей машины. Оба нежелательны. Я даже буду удовлетворен, если есть процесс, который мне нужно завершать каждый раз, когда я прекращаю отладку, чтобы убедиться, что не использовать предыдущие копии вещей.
какие решения?
3 ответов
сервер может отправлять заголовки в браузер, которые заставляют его продолжать использовать кэшированные копии. Простой способ проверить это -пустой код обозреватель кэш.
Если это исправляет его, вам нужно изучить HTTP-заголовки вы получаете от сервера. The разработчик инструменты (a.к. a. средства разработчика F12) в вашем браузере по выбору будет выставлять заголовки, возвращаемые сервер. Затем решите, хотите ли вы продолжать использовать эти настройки кэширования (хорошо для скорости) или изменять их (хорошо для развития).
и как вы настраиваете эти заголовки, спросите вы? Это зависит от сервера. Вот ссылка на инструкции для общих серверов:
быстрый способ-добавить случайные параметры после атрибута src скрипта или css-файла. например
<script type="javascript" src="@Url.Content("~/scripts/myScripts.js?" + DateTime.Now.ToString("ddMMHHmmss")"></script>
поэтому браузер всегда будет считать его новым файлом и не будет кэшировать.
обязательно удалите это при развертывании на live server.
попробуйте использовать
<link href"~/Content/Style.css" rel="stylesheet"/>
вместе с пучками. Это сработало для меня