转自: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 ,回车,显示如下:

PM> get-package -remote -filter  Combres.Mvc Id                                                Version                                          Description                                     --                                                -------                                          -----------                                     combres.mvc                                       2.2.1.2                                          Include extension methods for Combres to inte... combres.mvc                                       2.2.1.5                                          Include extension methods for Combres to inte... combres.mvc                                       2.2.1.8                                          Include extension methods for Combres to inte... combres.mvc                                       2.2.1.9                                          Include extension methods for Combres to inte...combres.mvc                                       2.2.2.0                                          Include extension methods for Combres to inte... combres.mvc                                       2.2.2.2                                          Include extension methods for Combres to inte... combres.mvc                                       2.2.2.3                                          Include extension methods for Combres to inte... combres.mvc                                       2.2.2.4                                          Include extension methods for Combres to inte... combres.mvc                                       2.2.2.5                                          Include extension methods for Combres to inte...

可以看到comberes.mvc 的版本,这里我安装的是 2.2.2.0 版本 输入 install-package -id Combres.Mvc  -version 2.2.2.0 , 回车自动安装combres.mvc

(4)安装完成,会自动生成App_Data/combres.xml,这个就是设置压缩/合并的文件配置。这个是我的配置

  1. <??>
  2. <combrescombres ='urn:combres'>
  3. <resourceSetsurl="~/combres.axd"defaultDuration="30"
  4. defaultVersion="auto"
  5. defaultDebugEnabled="auto">
  6. <resourceSetname="siteCss"type="css">
  7. <resourcepath="~/styles/site.css"/>
  8. <resourcepath="~/styles/jquery-ui-1.7.2.custom.css"/>
  9. </resourceSet>
  10. <resourceSetname="siteJs"type="js">
  11. <resourcepath="~/scripts/jquery-1.4.4.js"/>
  12. <resourcepath="~/scripts/jquery-ui-1.7.2.custom.min.js"/>
  13. </resourceSet>
  14. </resourceSets>
  15. </combres>
  • defaultDuration 默认缓存的时间,单位为天数
  • defaultVersion 合并后的资源版本,在你修改了资源文件后需要对版本进行修改,你可以指定auto或者手动设置一个版本号
  • defaultDebugEnabled 调试的模式,为true时那么资源文件不进行压缩,开发时可以设置成true,上线后设置成false

具体添加压缩方法的配置节点,用于选择哪种方法对资源文件进行压缩

  1. <cssMinifiers>
  2. <minifiername="yui"type="Combres.Minifiers.YuiCssMinifier, Combres">
  3. <paramname="CssCompressionType"type="string"value="StockYuiCompressor"/>
  4. <paramname="ColumnWidth"type="int"value="-1"/>
  5. </minifier>
  6. </cssMinifiers>
  7. <jsMinifiers>
  8. <minifiername="msajax"type="Combres.Minifiers.MSAjaxJSMinifier, Combres"
  9. binderType="Combres.Binders.SimpleObjectBinder, Combres">
  10. <paramname="CollapseToLiteral"type="bool"value="true"/>
  11. <paramname="EvalsAreSafe"type="bool"value="true"/>
  12. <paramname="MacSafariQuirks"type="bool"value="true"/>
  13. <paramname="CatchAsLocal"type="bool"value="true"/>
  14. <paramname="LocalRenaming"type="string"value="CrunchAll"/>
  15. <paramname="OutputMode"type="string"value="SingleLine"/>
  16. <paramname="RemoveUnneededCode"type="bool"value="true"/>
  17. <paramname="StripDebugStatements"type="bool"value="true"/>
  18. </minifier>
  19. </jsMinifiers>

要使用哪种压缩方法,在resourceSet或者在resource上添加相应的属性即可,配置后像下面这样:

  1. <??>
  2. <combrescombres ='urn:combres'>
  3. <cssMinifiers>
  4. <minifiername="yui"type="Combres.Minifiers.YuiCssMinifier, Combres">
  5. <paramname="CssCompressionType"type="string"value="StockYuiCompressor"/>
  6. <paramname="ColumnWidth"type="int"value="-1"/>
  7. </minifier>
  8. </cssMinifiers>
  9. <jsMinifiers>
  10. <minifiername="msajax"type="Combres.Minifiers.MSAjaxJSMinifier, Combres"
  11. binderType="Combres.Binders.SimpleObjectBinder, Combres">
  12. <paramname="CollapseToLiteral"type="bool"value="true"/>
  13. <paramname="EvalsAreSafe"type="bool"value="true"/>
  14. <paramname="MacSafariQuirks"type="bool"value="true"/>
  15. <paramname="CatchAsLocal"type="bool"value="true"/>
  16. <paramname="LocalRenaming"type="string"value="CrunchAll"/>
  17. <paramname="OutputMode"type="string"value="SingleLine"/>
  18. <paramname="RemoveUnneededCode"type="bool"value="true"/>
  19. <paramname="StripDebugStatements"type="bool"value="true"/>
  20. </minifier>
  21. </jsMinifiers>
  22. <resourceSetsurl="~/combres.axd"defaultDuration="30"
  23. defaultVersion="auto"
  24. defaultDebugEnabled="auto">
  25. <resourceSetname="siteCss"type="css"minifierRef="yui">
  26. <resourcepath="~/styles/site.css"/>
  27. <resourcepath="~/styles/jquery-ui-1.7.2.custom.css"/>
  28. </resourceSet>
  29. <resourceSetname="siteJs"type="js">
  30. <resourcepath="~/scripts/jquery-1.4.4.js"minifierRef="msajax"  />
  31. <resourcepath="~/scripts/jquery-ui-1.7.2.custom.min.js"minifierRef="off"/>
  32. </resourceSet>
  33. </resourceSets>
  34. </combres>

(5)删除 AppStart/Combres.cs,移除WebActivetor的引用。

(6)打开 global.asax 添加 using Combres;的引用。在 RegisterRoutes 第一行添加

  1. routes.AddCombresRoute("Combres");

(7)在需要的页面上添加:

  1. @using Combres.Mvc;
  2. <!DOCTYPE html>
  3. <html>
  4. <head>
  5. <meta charset="utf-8" />
  6. <title>@ViewBag.Title</title>
  7. @Html.CombresLink("siteCss")
  8. @Html.CombresLink("siteBaseCss")

【转】asp.net mvc css/js压缩合并 --- combres的更多相关文章

  1. ASP.NET MVC 中CSS JS压缩合并 功能的使用方法

    通过压缩合并js文件和css文件,可以减少 服务器的响应 次数和 流量,可以大大减小服务器的压力,对网站优化有比较明显的帮助!压缩合并 css 文件和js文件是网站优化的一个 比较常用的方法. ASP ...

  2. gulp之css,js压缩合并加密替换

    为了防止客户端的静态资源缓存,我们需要每次更新css或js的时候,通过md5或时间戳等方式重新命名静态资源.让客户端可以重新请求资源,而不是从缓存里取.然后html模板里的src也要做相应的修改.当然 ...

  3. Asp.Net MVC 页面代码压缩筛选器-自定义删除无效内容

    Asp.Net MVC 页面代码压缩筛选器 首先定义以下筛选器,用于代码压缩. /*页面压缩 筛选器*/ public class WhiteSpaceFilter : Stream { privat ...

  4. ASP.NET MVC之Bundle压缩JS和CSS

    介绍Bundle之前先引用<淘宝技术这十年>中一段话,对Web前端稍微有点常识的人都应该知道,浏览器下一步会加载页面中用到的CSS.JS(JavaScript).图片等样式.脚本和资源文件 ...

  5. [Asp.net Mvc]为js,css静态文件添加版本号

    方式一: 思路 string version = ViewBag.Version; @Scripts.RenderFormat("<script type=\"text/ja ...

  6. Asp.net MVC CSS/Javascript Bundle 配置文件

    Asp.net mvc 中使用 Web Optimization 可以合并.压缩JS和CSS文件,但是每次修改都要改代码 ~/App_Start/BundleConfig.cs ,遂有了将它挪到配置文 ...

  7. RequireJS模块化后JS压缩合并

    使用RequireJS模块化后代码被拆分成多个JS文件了,在部署生产环境需要压缩合并,RequireJS提供了一个打包压缩工具r.js来对模块进行合并压缩.r.js非常强大,不但可以压缩js,css, ...

  8. ASP.NET MVC+Vue.js实现联系人管理

    接触了一天vue.js,简单浏览了一本关于vue的电子书,就开始动手使用ASP.NET MVC和Vue.js开发一个联系人管理的小程序. 先看一下这个联系人管理的小程序的界面,也就是我们大概要实现什么 ...

  9. ASP.NET(支持 ASP.NET MVC)性能优化包 - combres 介绍

    项目地址:https://github.com/buunguyen/combres Overview Combres (previously hosted in CodePlex) helps you ...

随机推荐

  1. java关于null的介绍及比较问题..未完待续

    非对象比较内容,用== 对象比较内容,用相应的方法比如equais. demo1

  2. Python 数据类型--集合(set)

    一.集合(set) 集合也是一种数据类型,一个类似列表的,无序的,不重复的.它主要有两大作用 1.把一个列表变为集合,就自动去重了,不需要写额外的代码 2.关系测试,测试两组数据之间的交际.差集.并集 ...

  3. pyinstaller又踩一坑, configparser os.mknod

    在使用pyinstaller时,有使用configparser模块. 使用相对路径.在pycharm中测试,正常,打包成exe,就出错了 换用绝对路径, print(os.getcwd()) fp_d ...

  4. (转载)Hibernate的事务管理

    Hibernate的事务管理 事务(Transaction)是工作中的基本逻辑单位,可以用于确保数据库能够被正确修改,避免数据只修改了一部分而导致数据不完整,或者在修改时受到用户干扰.作为一名软件设计 ...

  5. 玩转X-CTR100 l STM32F4 l 电机正交编码器

    我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器的电机正交编码器,X- ...

  6. Selenium+java上传文件

    自动化调用: AutoIT脚本编译成可执行文件后,放在本地的某一个目录下 上传文件时,首先定位到[上传]字样文本,点击该按钮 执行编辑后的可执行文件,实现文件上传 一.安装AutoIT3,主要用到的工 ...

  7. ubuntu16.04 下 NVIDIA GTX1050ti 显卡驱动 PPA安装

    本文参考资料链接: http://blog.csdn.net/10km/article/details/61191230 前几天在京东商城上花了6999元买了台笔记本(惠普(HP)暗影精灵II代Pro ...

  8. Robot Framework 自定义库

    进入  python安装路径\Lib\site-packages 创建文件夹,库名 创建py文件,myclass.py 创建py文件,__init__.py 导入自定义库 遇到的问题: python版 ...

  9. DZY Loves Math系列

    link 好久没写数学题了,再这样下去吃枣药丸啊. 找一套应该还比较有意思的数学题来做. [bzoj3309]DZY Loves Math 简单推一下. \[\sum_{i=1}^n\sum_{j=1 ...

  10. 前端内容安全策略(csp)

    什么是CSP CSP全称Content Security Policy ,可以直接翻译为内容安全策略,说白了,就是为了页面内容安全而制定的一系列防护策略. 通过CSP所约束的的规责指定可信的内容来源( ...