ASP.NET捆绑和分类 – 包括用于生产捆绑包和未压缩文件的已经精简的文件进行开发

前端之家收集整理的这篇文章主要介绍了ASP.NET捆绑和分类 – 包括用于生产捆绑包和未压缩文件的已经精简的文件进行开发前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想要一些有关ASP.NET MVC捆绑和分类的专家建议.我在我的项目脚本文件中同时包含未分类(.js)和最小化版本(.min.js).我将它们包含在我的脚本包中,如下所示:
bundles.Add(new ScriptBundle("~/bundles/layout").Include(
                    "~/Scripts/jquery-{version}.js","~/Scripts/lib/errorhandling.js","~/Scripts/lib/errorhandling.min.js","~/Scripts/vendor/modernizr.custom.js","~/Scripts/vendor/modernizr.custom.min.js","~/Scripts/toastr.js","~/Scripts/toastr.min.js"));

看来,这个bundle确实只包含一个脚本文件,而不是两次.我已经确认了这两个开发和生产. (作为一个侧面的注意事项,在开发中,也就是说,当debug = true时,bundle不会被渲染,但是这些文件被包含为单独的脚本标签,这也是我想要的行为.)

我的问题是:

(1)这是最好的和推荐的方法,将已经最小化的文件包含在生产设置和未确定的文件中进行开发?

(2)ASP.NET是否尝试在整个生产过程中尽可能减少整个捆绑(尽管已经缩小)?如果是的话,防止ASP.NET尝试缩小捆绑包的最好办法是什么?

提前致谢!

解决方法

没有必要在脚本包中特别包含最小化的版本.默认情况下,MVC将搜索与.min.js匹配的文件,并包括(不完全确定如果它进一步减少).如果没有,它会创建一个最小化的版本.您可以通过将以下内容添加到BundleConfig.cs中进行测试
using System.Web.Optimization;

然后在开发中添加以下内容来覆盖debug = true

BundleTable.EnableOptimizations = true;

MS documentation

捆绑框架遵循以下几个常见的约定,例如:

>“FileX.min.js”和“FileX.js”选择“.min”文件,存在.>选择非“.min”版本进行调试.>忽略“-vsdoc”文件(例如jquery-1.7.1-vsdoc.js),它们仅由智能感知.

猜你在找的asp.Net相关文章