Asp.net mvc ASP.NET MVC 4捆绑和缩小:Url重写调试模式下的错误路径
我想使用这个特性,请假设我们运行调试模式,所以没有任何东西是捆绑的,但是每个引用只是呈现为单个标记。在当地,一切正常: 示例Asp.net mvc ASP.NET MVC 4捆绑和缩小:Url重写调试模式下的错误路径,asp.net-mvc,url-rewriting,asp.net-mvc-4,asp.net-optimization,Asp.net Mvc,Url Rewriting,Asp.net Mvc 4,Asp.net Optimization,我想使用这个特性,请假设我们运行调试模式,所以没有任何东西是捆绑的,但是每个引用只是呈现为单个标记。在当地,一切正常: 示例 public static void RegisterBundles(BundleCollection bundles) { bundles.Add(new ScriptBundle("~/bundles/jquery").Include( "~/Scripts/jquery-{version}.js")); } 现
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-{version}.js"));
}
现在从视图中调用@Scripts.Render(“~/bundles/jquery”)
时,会生成一个类似于此的标记:
<script src="/Scripts/jquery-1.8.2.js"></script>
请注意“/sub1”部分,该部分不应生成,并且永远不会出现在呈现的html代码中的某个地方,并导致404,因为url重写转发失败
而
<script src="@Url.Content("~/Scripts/jquery-1.8.2.js")"></script>
…仍然呈现到“/Scripts/jquery-1.8.2.js”的正确相对路径。我从未遇到过像这样重写URL的其他问题。我不想摆脱这种重写
显然,样式表也是如此
有什么想法可以尝试吗?这是当前脚本/样式帮助程序实现中的一个错误,这应该通过即将发布的1.1-alpha1版本(10月初)进行修复,因为对使用在ASP.NET中注册的VirtualPathProvider的支持已经修复了这类问题(正确解析资源路径)。很高兴能得到一位与此有着密切关系的人的回复,我相信这是我能得到的最准确的答案,谢谢!当我能够验证这一点时,我会接受这一正确答案;-)
<script src="/__sub1__/Scripts/jquery-1.8.2.js"></script>
<script src="@Url.Content("~/Scripts/jquery-1.8.2.js")"></script>