在将 ASP.NET MVC 5应用程序切换到 Azure Redis (Microsoft.Web.RedisOutputCacheProvider
Nuget 软件包)之后,我惊讶地发现,当设置为使用 OutputCacheLocation.Any
或 OutputCacheLocation.ServerAndClient
时,OutputCacheAttribute
也是如此
[Route("Views/Orders")]
[OutputCache(Duration = 600, Location = OutputCacheLocation.Any)]
public ActionResult Orders()
{
}
随机产生以下错误:
使用自定义输出缓存提供程序(如“ RedisOutputCache”)时, 只有以下过期策略和缓存特性 支持: 文件依赖,绝对过期,静态 验证回调和静态替换回调。
这很奇怪,因为上面的声明明确定义了没有 varybyparam
这样的高级东西的绝对过期。经过一些搜索,它看起来像是没有修复到 这个问题这是非常令人沮丧的。有没有与 ASP.NET 缓存机制兼容的外部缓存提供程序?如果没有,那么如何在 MVC/WebApi 应用程序的集群场景中实现服务器端 HTTP 输出缓存?