Заметив, что проверка на стороне клиента перестала работать, я определил, что ссылки на мои 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) - нет? Похоже, что проблему можно решить, сохранив номера версий в именах файлов.