我一直在搜索关于如何在项目级别禁用客户端缓存的信息.
我知道我可以在操作方法之前添加以下内容:
我知道我可以在操作方法之前添加以下内容:
[System.Web.Mvc.OutputCache(NoStore = true,Duration = 0,VaryByParam =“*”)]
我也读了一些关于缓存配置文件的内容,但这也意味着在几个地方引用它们.我想在web.config中单个设置,也可能在IIS中?
我正在处理的项目包含很多部分视图
提前感谢您在这件事上的任何建议.
解决方法
您可以通过Web.Config禁用浏览器缓存:
<configuration> <system.webServer> <httpProtocol> <customHeaders> <add name="Cache-Control" value="no-cache,no-store" /> <add name="Pragma" value="no-cache" /> <add name="Expires" value="-1" /> </customHeaders> </httpProtocol> </system.webServer> </configuration>
资料来源:http://blog.jamesjones.name/2009/11/how-to-disable-browser-caching-in.html
编辑:添加无存储到Chrome的Cache-Control(http://code.google.com/p/chromium/issues/detail?id=28035)
您可以将其设置在项目级别或子目录级别,以根据需要控制浏览器缓存.例如,在主要数据驱动/动态站点中,我可以在项目级别设置这些头文件,但是在/静态目录(包含我的.js,.css,图像)中,添加另一个web.config,其中包括适当的< / clear>指令,也可能设置一个未来到期的标题.