asp.net mvc的BundleConfig

返回
Author Avatar
钢翼
2017-05-22
编程
345

mvc4+,微软加了BundleConfig,可以用来统一管理网站的js和css文件,方便升级前端库或切换cdn的好工具。虽然有些人觉得写在layout里面也可以这样做,前提是你的layout并不多,多了还是用BundleConfig方便点。 但在使用中遇到一些比较坑的问题。在这里备注下,以免再犯。 基本写法如下:

 bundles.Add(new ScriptBundle("~/wwwroot/plugins/jQuery/jquery-1.10.2.min.js",
                "//cdn.bootcss.com/jquery/1.10.2/jquery.min.js").Include(
                        "~/wwwroot/plugins/jQuery/jquery-1.10.2.min.js"));

 
第一个参数是虚拟路径,供页面使用,如果你是css文件,里面有使用相对路径取图片,请使用和网站路径一致的虚拟路径,文件名可以不一致,避免图片文件路径出错。 第二个是cdn路径。 Include里面的是项目文件的实际路径,可以是多个,如果是多个,请注意蓝色路径不能是实际文件名,不然只会取一个。

BundleTable.EnableOptimizations = true;

用来启用捆绑压缩,默认就是true,可不加。注意的是,第一个参数和Include里面的文件名不能一致,否则不会压缩。 另外调试模式下就算开启也不会压缩,发布了就好了。

bundles.UseCdn = true;

用来启用cdn。