如何在调试模式下应用bundle变换?

时间:2013-06-10 15:45:42

标签: asp.net-mvc bundling-and-minification

在我的项目中,我想从服务器向浏览器发送应用程序设置。

为此,我创建了一个名为“ConfigFileTransform”的类,它继承自IBundleTransform。在流程方法中,我将javascript中的关键字替换为其值。 (也许这不是最好的解决方案......)

例如,使用此转换类将对象类型的查询限制设置为客户端。

当我调试我的应用程序时出现问题,我看到调试器进入我的自定义包转换类,但渲染的javascript不包含替换...

在发布模式下,一切正常。

当我处于调试模式时,是否有人知道我可以做些什么才能看到我的变换应用?

1 个答案:

答案 0 :(得分:5)

将它放在Global.asax文件的Application_Start方法中。

BundleTable.EnableOptimizations = true;

我没有使用过某些变换,但看了看这篇文章:

ASP.Net MVC Bundles and Minification

你应该能够做到这一点。您可能需要稍微重构捆绑代码,以便可以添加条件编译变量以仅在调试中清除变换。所以看起来像这样:

var noMinify = new ScriptBundle("~/bundles/toNotMinify").Include(
    "~/Scripts/xxxxxx.js"
);
#if DEBUG
    noMinify.Transforms.Clear();
    noMinify.Transforms.Add(new ConfigFileTransform())
#endif

_bundles.Add(noMinify);