Давайте посмотрим, что произойдет, когда мы используем связывание в System.Web.Optimization.
В этом примере я использовал «Пустой шаблон ASP.NET MVC 4» и взял последний пакет «Microsoft.AspNet.Web.Optimization» из nuget.
Затем я приступил к регистрации 2 файлов javascript. Один для jquery и другой для бутстрапа.
public static void RegisterBundles(BundleCollection bundles)
{
var javascriptBundle = new Bundle("~/bundles/javascripts")
.Include("~/Scripts/jquery-{version}.js")
.Include("~/Content/bootstrap/js/bootstrap.js");
bundles.Add(javascriptBundle);
}
Теперь, когда мы выполнили нашу настройку, давайте посмотрим, что произойдет, когда мы просмотрим страницу.
Вы можете видеть, что оба JavaScript файлы были просто включены, как мы обычно делаем. Это то, что происходит, когда в вашем web.config установлен флаг «debug».
Давайте превратим это в ложное и посмотрим, что произойдет сейчас.
Теперь то, что мы видим, это одна ссылка была добавлена, но с очень уникальным ищет место. Нажав на нее, мы видим, что она выплескивает обобщенную и комбинированную версию обоих файлов javascript, которые были указаны в нашем пакете.
Эта смешная строка запроса параметр v = loMmcAiXrKwMoVsM8Ok8Q5jVmuFQUI3fiiRVJQC33Hs1 является ссылкой на наше содержание, и мы можем видеть, что независимо от того, сколько раз мы попали на сайт, он собирается остаться такой же. (то есть освежающий несколько раз).
Давайте посмотрим, что говорит скрипач о ссылке на наши файлы javascript.
Мы можем видеть, что ответ кэширует. Срок действия кеша установлен для «Wed, 26 Mar 2014 06:49:06 GMT». Почти год с сегодняшнего дня.
Последующие запросы к ресурсу будут считываться из кеша браузера. «Этот ответ HTTP/304 указывает на то, что существующий кешированный ответ остается свежим. Заголовки кэша-времени в ответе HTTP/304 могут использоваться для обновления свежести кешированного ответа».
Если Вам необходима дополнительная информация, смотри также http://www.asp.net/mvc/tutorials/mvc-4/bundling-and-minification
Вы не могли бы объяснить это лучше. –