ASP.NET MVC绑定-仅在调试模式下包含脚本

ASP.NET MVC绑定-仅在调试模式下包含脚本,asp.net,asp.net-mvc-4,bundle,Asp.net,Asp.net Mvc 4,Bundle,是否可以根据应用程序的调试设置从捆绑包中添加或删除脚本 也就是说,给定了- var jQueryBundle = new ScriptBundle("~/js/main").Include( "~/Scripts/jquery-1.{version}.js", "~/Scripts/jquery-migrate-{version}.js", "~/Scripts/script.js"); 当站点未在调试配置文件中运行时,请删除jquery migrate引用,或者反过来

是否可以根据应用程序的调试设置从捆绑包中添加或删除脚本

也就是说,给定了-

var jQueryBundle = new ScriptBundle("~/js/main").Include(
    "~/Scripts/jquery-1.{version}.js",
    "~/Scripts/jquery-migrate-{version}.js",
    "~/Scripts/script.js");
当站点未在调试配置文件中运行时,请删除jquery migrate引用,或者反过来将其添加到debug下


注意。事实上,我在制定问题的同时提出了一个解决方案,我已经测试了它,它似乎有效。我已经回答了这个问题,但如果有更好的解决方案,现在还不能接受。同时,如果有人想利用它,答案至少现在可以作为参考。

我在写问题的时候,实际上想出了一个答案。由于我无法通过搜索找到答案,我决定无论如何发布问题并回答它——这两个问题都可以作为其他任何想做同样事情的人的参考,如果这是实现这一目标的最有效的方式,或者甚至是明智的做法,也可以从比我更聪明的头脑中获得反馈

var jQueryBundle = new ScriptBundle("~/js/main").Include(
    "~/Scripts/jquery-1.{version}.js",
    "~/Scripts/script.js");

if (HttpContext.Current.IsDebuggingEnabled)
{
    jQueryBundle.Include("~/Scripts/jquery-migrate-{version}.js");
}

bundles.Add(jQueryBundle);

我已经对此进行了测试,在列出调试脚本的同时,我保留了调试模式下保留的捆绑和缩小的默认设置,并且在正常运行时,迁移脚本的内容不在合并的缩小脚本中。在接下来的几天里,我将对此进行分析,并与普通捆绑进行比较,看看这是否会对应用程序启动产生任何性能影响。

我在写下问题的同时,实际上找到了一个答案。由于我无法通过搜索找到答案,我决定无论如何发布问题并回答它——这两个问题都可以作为其他任何想做同样事情的人的参考,如果这是实现这一目标的最有效的方式,或者甚至是明智的做法,也可以从比我更聪明的头脑中获得反馈

var jQueryBundle = new ScriptBundle("~/js/main").Include(
    "~/Scripts/jquery-1.{version}.js",
    "~/Scripts/script.js");

if (HttpContext.Current.IsDebuggingEnabled)
{
    jQueryBundle.Include("~/Scripts/jquery-migrate-{version}.js");
}

bundles.Add(jQueryBundle);
我已经对此进行了测试,在列出调试脚本的同时,我保留了调试模式下保留的捆绑和缩小的默认设置,并且在正常运行时,迁移脚本的内容不在合并的缩小脚本中。在接下来的几天里,我将对此进行分析,并将其与普通捆绑进行比较,看看这是否会对应用程序启动产生任何性能影响