【转】asp.net mvc css/js压缩合并 --- combres
转自:http://www.cnblogs.com/zxktxj/archive/2012/05/30/2526246.html
NuGet 网站:http://nuget.codeplex.com/releases/view/64974
Combres 英文介绍:http://www.codeproject.com/KB/aspnet/combres2.aspx
mvc3的设置和使用过程,模板引擎是razor的。
使用:
(1)直接使用vs2010的 NuGet 功能
(2)新建mvc3项目,打开vs2010,视图--->其他窗口--->Package Manager Console(需要系统程序包 Windows PowerShell 2.0,没有请安装)
(3)输入 get-package -remote -filter Combres.Mvc ,回车,显示如下:
可以看到comberes.mvc 的版本,这里我安装的是 2.2.2.0 版本 输入 install-package -id Combres.Mvc -version 2.2.2.0 , 回车自动安装combres.mvc
(4)安装完成,会自动生成App_Data/combres.xml,这个就是设置压缩/合并的文件配置。这个是我的配置
- <??>
- <combrescombres ='urn:combres'>
- <resourceSetsurl="~/combres.axd"defaultDuration="30"
- defaultVersion="auto"
- defaultDebugEnabled="auto">
- <resourceSetname="siteCss"type="css">
- <resourcepath="~/styles/site.css"/>
- <resourcepath="~/styles/jquery-ui-1.7.2.custom.css"/>
- </resourceSet>
- <resourceSetname="siteJs"type="js">
- <resourcepath="~/scripts/jquery-1.4.4.js"/>
- <resourcepath="~/scripts/jquery-ui-1.7.2.custom.min.js"/>
- </resourceSet>
- </resourceSets>
- </combres>
- defaultDuration 默认缓存的时间,单位为天数
- defaultVersion 合并后的资源版本,在你修改了资源文件后需要对版本进行修改,你可以指定auto或者手动设置一个版本号
- defaultDebugEnabled 调试的模式,为true时那么资源文件不进行压缩,开发时可以设置成true,上线后设置成false
具体添加压缩方法的配置节点,用于选择哪种方法对资源文件进行压缩
- <cssMinifiers>
- <minifiername="yui"type="Combres.Minifiers.YuiCssMinifier, Combres">
- <paramname="CssCompressionType"type="string"value="StockYuiCompressor"/>
- <paramname="ColumnWidth"type="int"value="-1"/>
- </minifier>
- </cssMinifiers>
- <jsMinifiers>
- <minifiername="msajax"type="Combres.Minifiers.MSAjaxJSMinifier, Combres"
- binderType="Combres.Binders.SimpleObjectBinder, Combres">
- <paramname="CollapseToLiteral"type="bool"value="true"/>
- <paramname="EvalsAreSafe"type="bool"value="true"/>
- <paramname="MacSafariQuirks"type="bool"value="true"/>
- <paramname="CatchAsLocal"type="bool"value="true"/>
- <paramname="LocalRenaming"type="string"value="CrunchAll"/>
- <paramname="OutputMode"type="string"value="SingleLine"/>
- <paramname="RemoveUnneededCode"type="bool"value="true"/>
- <paramname="StripDebugStatements"type="bool"value="true"/>
- </minifier>
- </jsMinifiers>
要使用哪种压缩方法,在resourceSet或者在resource上添加相应的属性即可,配置后像下面这样:
- <??>
- <combrescombres ='urn:combres'>
- <cssMinifiers>
- <minifiername="yui"type="Combres.Minifiers.YuiCssMinifier, Combres">
- <paramname="CssCompressionType"type="string"value="StockYuiCompressor"/>
- <paramname="ColumnWidth"type="int"value="-1"/>
- </minifier>
- </cssMinifiers>
- <jsMinifiers>
- <minifiername="msajax"type="Combres.Minifiers.MSAjaxJSMinifier, Combres"
- binderType="Combres.Binders.SimpleObjectBinder, Combres">
- <paramname="CollapseToLiteral"type="bool"value="true"/>
- <paramname="EvalsAreSafe"type="bool"value="true"/>
- <paramname="MacSafariQuirks"type="bool"value="true"/>
- <paramname="CatchAsLocal"type="bool"value="true"/>
- <paramname="LocalRenaming"type="string"value="CrunchAll"/>
- <paramname="OutputMode"type="string"value="SingleLine"/>
- <paramname="RemoveUnneededCode"type="bool"value="true"/>
- <paramname="StripDebugStatements"type="bool"value="true"/>
- </minifier>
- </jsMinifiers>
- <resourceSetsurl="~/combres.axd"defaultDuration="30"
- defaultVersion="auto"
- defaultDebugEnabled="auto">
- <resourceSetname="siteCss"type="css"minifierRef="yui">
- <resourcepath="~/styles/site.css"/>
- <resourcepath="~/styles/jquery-ui-1.7.2.custom.css"/>
- </resourceSet>
- <resourceSetname="siteJs"type="js">
- <resourcepath="~/scripts/jquery-1.4.4.js"minifierRef="msajax" />
- <resourcepath="~/scripts/jquery-ui-1.7.2.custom.min.js"minifierRef="off"/>
- </resourceSet>
- </resourceSets>
- </combres>
(5)删除 AppStart/Combres.cs,移除WebActivetor的引用。
(6)打开 global.asax 添加 using Combres;的引用。在 RegisterRoutes 第一行添加
- routes.AddCombresRoute("Combres");
(7)在需要的页面上添加:
- @using Combres.Mvc;
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8" />
- <title>@ViewBag.Title</title>
- @Html.CombresLink("siteCss")
- @Html.CombresLink("siteBaseCss")
【转】asp.net mvc css/js压缩合并 --- combres的更多相关文章
- ASP.NET MVC 中CSS JS压缩合并 功能的使用方法
通过压缩合并js文件和css文件,可以减少 服务器的响应 次数和 流量,可以大大减小服务器的压力,对网站优化有比较明显的帮助!压缩合并 css 文件和js文件是网站优化的一个 比较常用的方法. ASP ...
- gulp之css,js压缩合并加密替换
为了防止客户端的静态资源缓存,我们需要每次更新css或js的时候,通过md5或时间戳等方式重新命名静态资源.让客户端可以重新请求资源,而不是从缓存里取.然后html模板里的src也要做相应的修改.当然 ...
- Asp.Net MVC 页面代码压缩筛选器-自定义删除无效内容
Asp.Net MVC 页面代码压缩筛选器 首先定义以下筛选器,用于代码压缩. /*页面压缩 筛选器*/ public class WhiteSpaceFilter : Stream { privat ...
- ASP.NET MVC之Bundle压缩JS和CSS
介绍Bundle之前先引用<淘宝技术这十年>中一段话,对Web前端稍微有点常识的人都应该知道,浏览器下一步会加载页面中用到的CSS.JS(JavaScript).图片等样式.脚本和资源文件 ...
- [Asp.net Mvc]为js,css静态文件添加版本号
方式一: 思路 string version = ViewBag.Version; @Scripts.RenderFormat("<script type=\"text/ja ...
- Asp.net MVC CSS/Javascript Bundle 配置文件
Asp.net mvc 中使用 Web Optimization 可以合并.压缩JS和CSS文件,但是每次修改都要改代码 ~/App_Start/BundleConfig.cs ,遂有了将它挪到配置文 ...
- RequireJS模块化后JS压缩合并
使用RequireJS模块化后代码被拆分成多个JS文件了,在部署生产环境需要压缩合并,RequireJS提供了一个打包压缩工具r.js来对模块进行合并压缩.r.js非常强大,不但可以压缩js,css, ...
- ASP.NET MVC+Vue.js实现联系人管理
接触了一天vue.js,简单浏览了一本关于vue的电子书,就开始动手使用ASP.NET MVC和Vue.js开发一个联系人管理的小程序. 先看一下这个联系人管理的小程序的界面,也就是我们大概要实现什么 ...
- ASP.NET(支持 ASP.NET MVC)性能优化包 - combres 介绍
项目地址:https://github.com/buunguyen/combres Overview Combres (previously hosted in CodePlex) helps you ...
随机推荐
- 实现checkbox的多选
checkbox多选 技术一般水平有限,有什么错的地方,望大家指正. 全选,多选都是为了使用的方便,一般情况下全选就够用了,但是用户要求实现一个多选的功能也没有办法老老实实的做吧. 多选的实现也较为简 ...
- STL标准库-Tuple
技术在于交流.沟通,本文为博主原创文章转载请注明出处并保持作品的完整性 在前面我介绍过一次tuple,今天在书上也看到了tuple,那就在写一次吧. tuple(元组),他的内部可以放任意类型的变量( ...
- apache中的RewriteCond、RewriteRule
Rewirte主要的功能就是实现URL的跳转.可基于服务器级的(httpd.conf)和目录级的(.htaccess) 两种方式.如果要想用到rewrite模块,必须先安装或加载rewrite模块. ...
- Ubuntu16.04 和 hadoop2.7.3环境下 hive2.1.1安装部署
参考文献: http://blog.csdn.NET/reesun/article/details/8556078 http://blog.csdn.Net/zhongguozhichuang/art ...
- Softmax回归介绍
把输入值当成幂指数求值,再正则化这些结果值.这个幂运算表示,更大的证据对应更大的假设模型(hypothesis)里面的乘数权重值.反之,拥有更少的证据意味着在假设模型里面拥有更小的乘数系数.假设模型里 ...
- ScrollView在布局中的作用
ScrollView就是滚动一个View,将View里面的内容滚动起来. 但是由于scroolview只能有一个孩子,因此我们可以在ScrollView中在定义一个布局. 这样的话,我们就会直接滚动整 ...
- hdu 5185 dp(完全背包)
BC # 32 1004 题意:要求 n 个数和为 n ,而且后一个数等于前一个数或者等于前一个数加 1 ,问有多少种组合. 其实是一道很水的完全背包,但是没有了 dp 的分类我几乎没有往这边细想,又 ...
- excel导出: mac safari对application/x-msdownload的支持不佳
https://blog.csdn.net/lizeyang/article/details/8982155?locationNum=3&fps=1 http://tool.oschina.n ...
- Microsoft - Find the K closest points to the origin in a 2D plane
Find the K closest points to the origin in a 2D plane, given an array containing N points. 用 max hea ...
- AGC014E Blue and Red Tree
题意 There is a tree with \(N\) vertices numbered \(1\) through \(N\). The \(i\)-th of the \(N−1\) edg ...