在ASP.NET MVC 4(应该也存在于WebForm中)中,有一个叫Bundle的东西,用来压缩js和css(多个文件可以打包成一个文件),可以区分调试和非调试。调试时不压缩,而是以原来的方式显示,方便发现问题。
具体优势请参考百度或官方介绍:http://www.asp.net/MVC/tutorials/MVC-4/bundling-and-finification.
这里我们简单记录一下如何使用它。
首先,如果你使用的是ASP.NET MVC4基础或者其他内容更丰富的模板,那么Bundle应该已经自动配置好了,因为会有jQuery和jQuery UI的引用,这两个引用都会用到Bundle。
简单说一下要点。
首先,在项目的App_Start文件夹中,会有一个BundleConfig.cs文件:
它包含了所有需要Bundle的内容,可以自己设置:
其中,捆绑包。添加是将捆绑项目添加到网站的捆绑列表中。主要有ScriptBundle和StyleBundle,分别用于压缩脚本和样式表。用虚拟路径初始化Bundle的实例,虚拟路径实际上并不存在,然后在新Bundle的基础上在项目中包含文件。具体的Include语法可以在上面提供的官方介绍中找到。
然后Bundle的注册在项目根目录下的Global.asax文件中,这个文件中的Application_Start是网站程序的开始,它注册了网站的各种初始化内容,包括Bundle对BundleTable的添加:
默认情况下,Bundle压缩并打包js和css,但是有一个属性可以明确指示是否需要打包和压缩:
复制代码如下:bundletable。enableoptimizations=true
如果设置为false,它将与debug=true时相同。
使用时,在相应位置调用脚本渲染和样式渲染的渲染方法:
最终用户页面可以达到打包压缩的效果。
有一个要点需要注意:在Web.config中,当编译的debug属性设置为true时,表示项目处于调试模式。此时Bundle不会对文件进行打包压缩,页面中引用的js和css会按原样显示在html中,方便调试时发现问题(压缩后会比较复杂)。
当运行时最终部署时,您可以看到通过将debug设置为false来打包和压缩js和css。
=============
使用捆绑包的关键是在ASP.NET的捆绑包商店注册捆绑包。
如果您想在ASP.NET网络表单中使用捆绑包,您需要选择。NET Framework 4.5在新建项目时,最好使用模板网站新建一个,这样就可以直接看到Bundle了。
以上就是本文的全部内容,希望对大家的学习有所帮助。