在 ASP.NET MVC 4中启用调试模式下的捆绑和缩小

我不敢相信我找不到关于这个的其他问题,但是: 如何在调试模式下打包一个 启动?我知道它是如何启用发布模式的,但在调试模式下,我找不到一种方法来启用捆绑。

Is this even possible or am I missing something?

58174 次浏览

可以通过添加

BundleTable.EnableOptimizations = true;

在 RegisterBundles 方法中(App _ Start 文件夹中的 BundleConfig 类)。

查看 http://www.asp.net/mvc/tutorials/mvc-4/bundling-and-minification了解更多信息

你也可以改变你的 web.config:

<system.web>
<compilation debug="false" />
</system.web>

但是这将完全禁用调试模式,所以我建议使用第一个选项。

最后,像下面这样使用 # if 编译器指令来获得两者的最佳效果:

#if DEBUG
BundleTable.EnableOptimizations = false;
#else
BundleTable.EnableOptimizations = true;
#endif

Global.asax文件的 Application_Start()方法中添加 BundleTable.EnableOptimizations = true;

调试时 微软官方网站状态不可能启用它。我认为原因是,它更容易调试,而它是禁用的。如果您想测试影响您的应用程序,您必须在 Web.config 中设置 <compilation debug="true" />

@ Hebe: 引用 MS 页面

It's easy to debug your JavaScript in a development environment (where the compilation Element in the Web.config file is set to debug="true" ) because the JavaScript files are not bundled or minified.

在 Global.asax 中添加 BundleConfig.RegisterBundles(BundleTable.Bundles);

 protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();


WebApiConfig.Register(GlobalConfiguration.Configuration);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles); // add this
}