我正在我的MVC应用程序中使用标准的输出缓存标记,这很好用,但我需要在某些时候强制它被清除。我该怎么做?被缓存的页面是从非常简单的路由{Controller}/{PageName}构建的 - 因此大多数页面都是这样的:/Pages/About-Us
以下是我放置在.aspx视图页顶部的输出缓存标记(只是为了清楚起见):
<@ OutputCache Duration="100" VaryByParam="None" %>
所以在同一个控制器上执行另一个操作来更新内容时,我需要清除这个缓存,或者甚至清除所有缓存 - 这是一个非常小的应用程序,所以清空所有缓存项不是什么大问题。
Varies="none"
时,响应头中会包含Vary: *
。而当你使用Varies=""
时,则不会有这样的响应头。 - Jeff Atwoodweb.config
中为整个应用程序设置它:<caching><outputCache omitVaryStar="true" /></caching>
。 - TheCloudlessSky