下面的是我的Fidler.

如果您注意上面的屏幕截图,js和css文件将在每次刷新时下载。为什么?
我对梳子的功能有一个疑问。Url.Combress可以缓存css文件。对吗?如果从物理位置删除css文件,请执行以下操作。我得到404错误?为什么?因为这个文件是缓存的。所以它不应该从它的物理位置中挑选出来。相反,应该从缓存中选择它。对吗?
解释
我正在使用MVC3。我已经在软件包管理器控制台中安装了
Install-Package combres.mvc下面的是我的路由表的证明

我的布局中有以下两个文件.
<link href=""~/Content/Site.css" type="text/css" />
<script src="~/Scripts/jquery-1.7.1.min.js" type="text/javascript"></script>Combress.xml设置
<combres xmlns='urn:combres'>
<filters>
<filter type="Combres.Filters.FixUrlsInCssFilter, Combres" />
</filters>
<resourceSets url="~/combres.axd"
defaultDuration="30"
defaultVersion="auto"
defaultDebugEnabled="auto"
defaultIgnorePipelineWhenDebug="true"
localChangeMonitorInterval="30"
remoteChangeMonitorInterval="60"
>
<resourceSet name="siteCss" type="css">
<resource path="~/content/Site.css" />
</resourceSet>
<resourceSet name="siteJs" type="js">
<resource path="~/scripts/jquery-1.7.1.min.js" />
</resourceSet>
</resourceSets>
</combres>当我执行以下路径时
http://localhost:2474/Home/About我想,它每次都在下载上面的文件。根据我的理解,combress应该缓存combres.xml设置中提到的图像/css/js文件。
发布于 2013-08-15 13:56:07
您需要以不同的方式引用这些文件。由于您正在使用asp.net-mvc,所以我建议您也安装这个互补的nuget包。
Install-Package combres.mvc 然后在您的母版页中,或者在您想要不同资源的任何地方
@Url.CombresLink("siteCss")
@Url.CombresLink("siteJs")注意事项:在添加上述代码行之前。在布局页面中添加@using Combres.Mvc;。
这是文档的标准建议。
请注意,您可能希望在调试模式下拥有完整的源代码,并且只希望在发布模式下进行组合,这是resourceSet:defaultDebugEnabled="auto"上的一个设置。
还有其他的考虑,但这应该足够开始了。
https://stackoverflow.com/questions/18254158
复制相似问题