Заметив, что моя проверка на стороне клиента перестала работать, я решил, что мои ссылки на html-скрипты для jquery и modernizr устарели. Я сразу понял, что это произошло потому, что я недавно обновил все свои пакеты NuGet, поэтому номера версий больше не совпадали.
Вот рассматриваемая разметка (после ручного обновления номеров версий):
<script src="@Url.Content("~/Scripts/jquery-1.6.3.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/modernizr-2.0.6.min.js")" type="text/javascript"></script>
Это вопрос технического обслуживания. По сути, похоже, что мне приходится вручную увеличивать номера версий в моих ссылках на сценарии каждый раз, когда я использую NuGet для обновления всех своих пакетов. Это в лучшем случае неудобно, а в худшем случае я просто забуду это сделать, особенно учитывая отсутствие предупреждений при выполнении обновления в NuGet или во время компиляции.
Два вопроса:
Что я могу сделать, чтобы улучшить процесс обновления, чтобы номера версий обновлялись автоматически или, по крайней мере, чтобы получать предупреждение о том, что мои ссылки на скрипты неверны? (Примечание: у меня уже включен MvcBuildViews.)
Почему jquery и modernizr имеют номера версий в имени файла, а другие скрипты (например, jquery.validate и jquery.validate.unobtrusive) — нет? Похоже, проблема может быть решена путем исключения номеров версий из имен файлов.