在MVC中使用bundle fallback时,我注意到当cdn失败时,fallback bundle没有附加版本字符串。有没有办法强制显示版本字符串?
我担心的是,如果我转移到更新版本的jQuery(或bootstrap或其他),脚本将不会在客户端上更新,因为它仍然可以在缓存中(因为默认情况下缓存长度为1年)。
例如,此捆绑包配置:
Public Module BundleConfig
Public Sub RegisterBundles(ByVal bundles As BundleCollection)
BundleTable.EnableOptimizations = True
bundles.UseCdn = True
Dim jQuery2 = New ScriptBundle("~/bundles/jQuery2", "//broken.ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js") _
.Include("~/Scripts/jquery-2.1.4.min.js")
jQuery2.CdnFallbackExpression = "window.jQuery"
bundles.Add(jQuery2)
End Sub
End Module
嵌入此次通话:
@Scripts.Render("~/bundles/jQuery2")
生成此输出:
<script src="//broken.ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script>
(window.jQuery)||document.write('<script src="/bundles/jQuery2"><\/script>');
</script>
<script src="/bundles/jQuery2"></script>
这是一个错误,一个疏忽,还是我错过了一些东西来让版本字符串出现?
我希望后备包呈现为:
<script src="/bundles/jQuery2?v=somejunkuniquetothisversionofthefile"></script>
我怎样才能做到这一点?
我知道this question has been asked before,但作者没有更新他的问题以包含任何代码,所以我在这里这样做。