One of the neat features inside the ASP.NET Optimization library is the support for a {version} string. Before you had to update your BundleConfig.cs each time that you upgraded one of your included JavaScript/CSS libraries. The{version}
placeholder tells the bundler to look for a string in the form of N[.N[.N]]
and pick the file with the highest numbers.
You can see this feature in action by looking at the BundleConfig you get out-of-the-box when creating a new ASP.NET MVC application:
This will load the latest JQuery file that can be found inside my Scripts folder:
public class BundleConfig | |
{ | |
// For more information on bundling, visit http://go.microsoft.com/fwlink/?LinkId=301862 | |
public static void RegisterBundles(BundleCollection bundles) | |
{ | |
bundles.Add(new ScriptBundle("~/bundles/jquery").Include( | |
"~/Scripts/jquery-{version}.js")); | |
//Other bundles removed | |
} | |
} |
There is only one thing missing in this feature; it only works when the version is part of the filename not of a folder. For example, when you use the Kendo UI libraries you’ll see that they don’t have a version number in every file but instead have the version number on the folder level. Unfortunately this doesn’t work with the {version} number feature and you still have to update the references yourself: