combres关于mvc3 css与js压缩合并

来源:互联网 发布:怎样利用淘宝漏洞赚钱 编辑:程序博客网 时间:2024/06/06 22:47

作用:多个JS或CSS文件  打包,同一加载,减少请求次数。

原因:点击YSlow查看详情

测试项目:下载示例项目

使用方法:

1)  下载Combres2.0组件,或本地下载(测试知,高版本的不支持MVC3 ,郁闷了,也不想想MVC4谁用Combres啊,自带的多好),解压,得到一个文件夹“Combres_2.0”,里面

有三个压缩文件,继续解压红线标注的。


2) 建一个MVC3项目。


3)从解压文件夹中找到  “  Combres_2.0\Source\Source\Combres\Samples\MvcSample\App_Data\combres.xml  ”  文件 ,然后把它复制到MVC3项目的App_Data文件夹下


4)添加引用 Combres.dll和Combres.Mvc.dll(他们在Combres_2.0\Binary\Binary文件夹下面)


5)

               5-1:打开根目录下面的web.config文件, 在configSections配置节下添加

    <section name="combres" type="Combres.ConfigSectionSetting, Combres, Version=2.0.0.0,     Culture=neutral, PublicKeyToken=49212d24adfbe4b4"/>

               5-2:在configuration配置节下添加Combres配置文件的路径,此文件的作用我们下面再说。

<combres definitionUrl="~/App_Data/combres.xml"/>

            

                配置好了后应该像这样(combres节点必须在configSections节点下面)

<configuration>    <configSections>    <section name="combres" type="Combres.ConfigSectionSetting, Combres, Version=2.0.0.0,     Culture=neutral, PublicKeyToken=49212d24adfbe4b4"/>    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection,     EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />  </configSections>  <combres definitionUrl="~/App_Data/combres.xml"/>


6)在<system.web>节点下面添加httpModules的节点

    <httpModules>      <add name="UrlRoutingModule" type="System.Web.Routing.UrlRoutingModule, System.Web.Routing, Version=3.5.0.0, Culture=neutral,     PublicKeyToken=31BF3856AD364E35"/>    </httpModules>

7)配置App_Data文件夹下Combres.xml

<?xml version="1.0" encoding="utf-8" ?><combres xmlns='urn:combres'>  <filters>    <filter type="Combres.Filters.FixUrlsInCssFilter, Combres" />    <filter type="Combres.Filters.DotLessCssFilter, Combres" acceptedResourceSets="dotLessCss" />  </filters>  <jsMinifiers>    <minifier name="msajax" type="Combres.Minifiers.MSAjaxJSMinifier, Combres" binderType="Combres.Binders.SimpleObjectBinder, Combres">      <param name="CollapseToLiteral" type="bool" value="true" />      <param name="EvalsAreSafe" type="bool" value="true" />      <param name="MacSafariQuirks" type="bool" value="true" />      <param name="CatchAsLocal" type="bool" value="true" />      <param name="LocalRenaming" type="string" value="CrunchAll" />      <param name="OutputMode" type="string" value="SingleLine" />      <param name="RemoveUnneededCode" type="bool" value="true" />      <param name="StripDebugStatements" type="bool" value="true" />    </minifier>  </jsMinifiers>  <resourceSets url="~/combres.axd"                defaultDuration="30"                defaultVersion="auto"                defaultDebugEnabled="false"                defaultIgnorePipelineWhenDebug="false"                localChangeMonitorInterval="30"                remoteChangeMonitorInterval="60"                >        <!--自定义包名称,包内的文件类型(一般就是js或css)-->    <!--示例1-->    <resourceSet name="siteJs" type="js">      <!--被打包的文件1-->      <resource path="~/scripts/jquery-1.7.1.js" />      <!--被打包的文件2-->      <resource path="~/scripts/TestJs.js" />    </resourceSet>    <!--示例2-->    <resourceSet name="siteJs2" type="js">      <resource path="~/scripts/jquery-1.7.1.js" />      <resource path="~/scripts/TestJs2.js" />    </resourceSet>    <!--示例3-->    <resourceSet name="siteCss" type="css">      <resource path="~/scripts/test.css" />      <resource path="~/scripts/admin.css" />    </resourceSet>          </resourceSets></combres>

8)在Global文件中,添加using Combres引用, 然后在 public static void RegisterRoutes(RouteCollection routes)函数的第一行添加:

routes.AddCombresRoute("Combres"); 

9)在视图中@using Combres.Mvc   然后添加一句@Html.Raw(Url.CombresLink("siteJs"))

@{    Layout = null;}<!DOCTYPE html>@using Combres.Mvc;<html><head>    <title>Test</title>    @*@ViewBag.js*@    @Html.Raw(Url.CombresLink("siteJs"))</head><body>    <div id="id">    </div></body></html>

结束!!!(示例项目:下载)



0 0
原创粉丝点击