"the user's browser will already have those common files in its cache"
Not true. You are referencing your local copy, so it will only be in the cache if they have been to your site before... and if you weren't using bundling before, then no, it won't be cached. After the first download though, yes it will remain cached until you change the scripts.
If you want to reference a version that a user likely has cached, then you could use a CDN. Code below is from ASP.NET Bundling and Minification
public static void RegisterBundles(BundleCollection bundles)
{
bundles.UseCdn = true; //enable CDN support
var jqueryCdnPath = "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.1.min.js";
bundles.Add(new ScriptBundle("~/bundles/jquery",
jqueryCdnPath).Include(
"~/Scripts/jquery-{version}.js"));
}
And then the fallback if the CDN fails:
@Scripts.Render("~/bundles/jquery")
<script type="text/javascript">
if (typeof jQuery == 'undefined') {
var e = document.createElement('script');
e.src = '@Url.Content("~/Scripts/jquery-1.7.1.js")';
e.type = 'text/javascript';
document.getElementsByTagName("head")[0].appendChild(e);
}
</script>