Asp.net mvc 4 ASP.NET MVC 4脚本包返回空
具体地说,我尝试在MVC4中使用已经缩小的脚本创建一个ScriptBundle,并返回这个相同的包,无论项目是否处于调试状态 我的web项目引用了MVC Telerik Grid NuGet包。在这个包中,Telerik只提供缩小的JS文件。捆绑代码如下所示Asp.net mvc 4 ASP.NET MVC 4脚本包返回空,asp.net-mvc-4,bundling-and-minification,Asp.net Mvc 4,Bundling And Minification,具体地说,我尝试在MVC4中使用已经缩小的脚本创建一个ScriptBundle,并返回这个相同的包,无论项目是否处于调试状态 我的web项目引用了MVC Telerik Grid NuGet包。在这个包中,Telerik只提供缩小的JS文件。捆绑代码如下所示 // telerik scripts bundles.Add(new ScriptBundle("~/scripts/bundles/telerik").Include( "~/Scr
// telerik scripts
bundles.Add(new ScriptBundle("~/scripts/bundles/telerik").Include(
"~/Scripts/2012.1.214/telerik.common.min.js",
"~/Scripts/2012.1.214/telerik.textbox.min.js",
"~/Scripts/2012.1.214/telerik.calendar.min.js",
"~/Scripts/2012.1.214/telerik.datepicker.min.js",
"~/Scripts/2012.1.214/telerik.grid.min.js",
"~/Scripts/2012.1.214/telerik.grid.filtering.min.js"));
其他ScriptBundle运行正常,但当我的项目尝试引用此捆绑包时,请求显示为:scripts/bundles/telerik?v=
不返回任何内容
如果我设置了BundleTable.EnableOptimizations=true
,那么它会返回ScriptBundle并引用特定的版本,但是这个解决方案是不可接受的
我不想强制设置BundleTable.EnableOptimizations=true
,因为我希望所有其他捆绑包在适当的时候返回非精简版本
任何人都有类似的经历,如果有,解决方法是什么?我想你也有同样的问题,请查看此链接: 将.min.js重命名为.js或执行以下操作:
public static void AddDefaultIgnorePatterns(IgnoreList ignoreList)
{
if (ignoreList == null)
throw new ArgumentNullException("ignoreList");
ignoreList.Clear();
ignoreList.Ignore("*.intellisense.js");
ignoreList.Ignore("*-vsdoc.js");
ignoreList.Ignore("*.debug.js", OptimizationMode.WhenEnabled);
//ignoreList.Ignore("*.min.js", OptimizationMode.WhenDisabled);
ignoreList.Ignore("*.min.css", OptimizationMode.WhenDisabled);
}
这似乎奏效了。我确实添加了Clear()方法调用,以便在Ignore()调用之前清除默认值。谢谢