[英]Unable to generate 'VersionQueryString' in Scripts.Render when using bundle
這是我的設置:
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/" + Links.Scripts.jquery_2_1_1_min_js,
"~/" + Links.Scripts.jquery_migrate_1_2_1_min_js,
"~/" + Links.Scripts.calendar.jquery_ui_datepicker_cc_all_min_js
));
}
protected void Application_Start()
{
RegisterBundles(BundleTable.Bundles);
BundleTable.EnableOptimizations = true;
}
在“布局”視圖中使用以下代碼:
@Scripts.Render("~/bundles/jquery")
在VS中沒問題。 但是,當發布我的項目並將其部署到IIS8.0中時 ,無法生成VersionQueryString ,這是HTML輸出:
<script src="/Test/bundles/jquery?v="></script>
但這是一個問題。HTML輸出必須是這樣的:
<script src="/Test/bundles/jquery?v=D8YBlpJkSh-c2SxXkODfl3ftU01p3BTOtqGF3Uuuq9E1"></script>
什么原因會導致無法生成VersionQueryString?
更改此行
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/" + Links.Scripts.jquery_2_1_1_min_js,
"~/" + Links.Scripts.jquery_migrate_1_2_1_min_js,
"~/" + Links.Scripts.calendar.jquery_ui_datepicker_cc_all_min_js
));
}
至
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
VirtualPathUtility.ToAppRelative(Links.Scripts.jquery_2_1_1_min_js),
VirtualPathUtility.ToAppRelative(Links.Scripts.jquery_migrate_1_2_1_min_js),
VirtualPathUtility.ToAppRelative(Links.Scripts.calendar.jquery_ui_datepicker_cc_all_min_js)
));
}
VirtualPathUtility.ToAppRelative :使用System.Web.HttpRuntime.AppDomainAppVirtualPath屬性中的應用程序虛擬路徑將虛擬路徑轉換為應用程序相對路徑。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.