转自: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. SharePoint Word Service-PowerShell

    1. 配置转换进程 Set-SPWordConversionServiceApplication –Identity "Word Automation Services" –Act ...

  2. xampp for mac 本地服务器的使用

    1.下载xampp安装包 ,百度搜索下载合适版本安装包 2. 安装.下一步 ...->完成 3. 打开看到xampp启动页面. 打开你安装的路径:我这里的路径是:C:\xampp: 找见xamp ...

  3. 《JAVA----day01和day02》

    1,(在有符号的情况下)若一个二进制数都是1,则对应的十进制数是-1 2,在定义数值类型时,若无特别说明,整数默认:int  小数默认:double 在内存中 占字节数 取值范围 (1)byte:1个 ...

  4. FMX StringGrid向上滑动自动加载记录(二)

    写完FMX StringGrid向上滑动自动加载记录(一)自己也觉得不理想,实现的别扭与复杂,现在找到更好的实现方法,原来,StringGrid从基类TCustomPresentedScrollBox ...

  5. Android中检测字符编码(GB2312,ASCII,UTF8,UNICODE,TOTAL——ENCODINGS)方法(一)

    package com.android.filebrowser;   import java.io.*; import java.net.*;   public class FileEncodingD ...

  6. UI基础:UITextField 分类: iOS学习-UI 2015-07-01 21:07 68人阅读 评论(0) 收藏

    UITextField 继承自UIControl,他是在UILabel基础上,对了文本的编辑.可以允许用户输入和编辑文本 UITextField的使用步骤 1.创建控件 UITextField *te ...

  7. C# 泛型详解---进阶编程(七)

    今天我们来学习在C#的泛型技巧,传统的课本都在讲解什么是泛型,然后列举一大堆代码示例告诉你什么是泛型,今天我们就来聊聊更加本质的东西,我为什么要用泛型?它是来解决什么问题的?底层原理是什么? 简单来说 ...

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

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

  9. Windows 服务器配置、运行、图文流程(新手必备!) - IIS建站配置一条龙

    Window 2008 服务器的配置教程 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar ...

  10. Unity插件-NGUI使用教程

    Unity插件-NGUI使用教程 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 1 NGUI 一款强大的次 ...