Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How is {version} value being populated in BundleConfig file?

I recently added jquery.dataTables nuget package to my project and I wanted to bundle the necessary files inside the BundleConfig. Since this package is installed inside a "DataTables-1.9.4" folder within Scripts folder I added the following line to my BundlesConfig:

bundles.Add(new ScriptBundle("~/bundles/dataTables").Include(
            "~/Scripts/DataTables-{version}/media/js/jquery.dataTables.js"));

However I got the following error:

An exception of type 'System.ArgumentException' occurred in System.Web.Optimization.dll but was not handled in user code

When I modify the line to:

bundles.Add(new ScriptBundle("~/bundles/dataTables").Include(
            "~/Scripts/DataTables-1.9.4/media/js/jquery.dataTables.js"));

it works just fine.

So my question is how does the version get injected in the case of JQuery bundle? Is this defined someplace in the package itself and is there a way for me to fix this? I hate the idea of having to change my bundle config every time I update the dataTables nuget package...

like image 832
Marko Avatar asked Dec 04 '13 14:12

Marko


1 Answers

{version} just tells the bundler to look for a string in the form of N[.N[.N]] and pick the file with the highest numbers.

like image 184
Chris Pratt Avatar answered Oct 20 '22 12:10

Chris Pratt