【问题标题】:WebAPI OutputCache cache invalidationWebAPI OutputCache 缓存失效
【发布时间】:2015-02-04 15:27:03
【问题描述】:

我的控制器方法上有以下缓存属性:

 [CacheOutput(ClientTimeSpan = 14400, ServerTimeSpan = 14400)]

我正在尝试清除缓存。但是,运行这行代码后:

 //clear cache   
 cache.RemoveStartsWith(Configuration.CacheOutputConfiguration().MakeBaseCachekey("BeamsController", "Get"));

在没有调用控制器方法的情况下,我仍然收到 304 未修改响应。

我正在使用这个库https://github.com/filipw/AspNetWebApi-OutputCache

【问题讨论】:

    标签: caching asp.net-web-api cache-control outputcache


    【解决方案1】:
     [InvalidateCacheOutput("Get", typeof(BeamsController))] 
    

    似乎有效,而不是上面的“手动失效”(RemoveStartsWith)。

    其实看了属性的源码后,看来文档有误,应该是:

    cache.RemoveStartsWith(Configuration.CacheOutputConfiguration().MakeBaseCachekey("Beams", "Get"));
    

    按预期工作,调用方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-28
      • 2015-04-29
      • 2013-04-18
      • 2013-02-13
      • 2010-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多