【问题标题】:Manual outputcache refresh手动输出缓存刷新
【发布时间】:2015-11-25 12:32:36
【问题描述】:

现在我有一个持续时间设置为 365 天的操作的 OutCache。但是,根据某些事件,我想清除缓存并且清除缓存有多种条件。此外,VaryByParam 不是一个选项。

我怎样才能做到这一点?

我想我可以做这样的事情,在 cookie 中存储一个变量,例如: RefreshCache = false 并在 VaryByCustom 覆盖方法中检查它。如果 RefreshCache 评估为 true,请将其重置为 false,将 VaryByCustom 参数变量增加 1。

但是,我不确定这是实现我想要的有效方法。

【问题讨论】:

  • 嗨,你知道如何处理这个问题吗?

标签: asp.net-mvc caching browser-cache outputcache varybyparam


【解决方案1】:

您可以使用HttpResponse.RemoveOutputCacheItem 删除输出缓存项

但是,这仅适用于存储在服务器上的 OuputCache 项目。如果你在客户端缓存,那么这个方法不会有任何影响。

希望这会有所帮助。

【讨论】:

  • 默认情况下它存储在 3 个位置,对吗? Web 服务器、任何代理服务器和用户的浏览器。那么在默认情况下 RemoveOutputCacheItem 将如何工作?另外,你觉得我提出的方法怎么样?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-08-03
  • 1970-01-01
  • 1970-01-01
  • 2021-09-03
  • 2019-07-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多