Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 未包含在@scripts.Render中时,在调试模式下缩小脚本_Asp.net_Asp.net Mvc_Debugging_Razor_Bundling And Minification - Fatal编程技术网

Asp.net 未包含在@scripts.Render中时,在调试模式下缩小脚本

Asp.net 未包含在@scripts.Render中时,在调试模式下缩小脚本,asp.net,asp.net-mvc,debugging,razor,bundling-and-minification,Asp.net,Asp.net Mvc,Debugging,Razor,Bundling And Minification,在ASP.NET网站上,我们将BundleConfig.cs设置为在发布模式下缩小和连接脚本,但在调试模式下不缩小和连接脚本 在调试模式下,我有以下设置 在web.config文件中。 然后在Proj/App_Start/BundleConfig.cs中 最后一行是 #if DEBUG BundleTable.EnableOptimizations = false; #else BundleTable.EnableOptimizations = true; #endif 在调

在ASP.NET网站上,我们将BundleConfig.cs设置为在发布模式下缩小和连接脚本,但在调试模式下不缩小和连接脚本

在调试模式下,我有以下设置 在web.config文件中。

然后在Proj/App_Start/BundleConfig.cs中

最后一行是

#if DEBUG
    BundleTable.EnableOptimizations = false;
#else
    BundleTable.EnableOptimizations = true;
#endif
在调试模式下,脚本是未统一的,因此我们可以调试它们,但只有在 在.cshtml页面中使用@Scripts.Render

然而,在web应用程序的某些特定部分中,我们动态加载脚本以实现小部分功能

我们使用jQuery.getScript调用包的名称

由于某些原因,该脚本仍然是缩小的,并且所有的调试器都是;断点被剥离出来。为什么会这样

解决这个问题的唯一方法是执行以下操作

#if DEBUG
// Iterate over each bundle ()   *not needed if compilation debug="true"
foreach (var bundle in bundles)
{
    // And strip out any transformations (minify)
    bundle.Transforms.Clear();
}
#endif  

这似乎是不必要的,我不知道为什么没有它就不能工作。

这不与浏览器缓存有关吗?您是否检查过浏览器调试控制台,请求结果是否真的来自服务器?
@Scripts.Render
(我认为)只生成适当的HTML,因此如果jQuery从脚本标记获取它们或浏览器,应该没有什么区别。检查浏览器调试控制台中的请求日志(例如在Chrome中),在那里您可以看到浏览器通过脚本标记加载请求日志和jQuery获取请求日志时的区别。