gpt4 book ai didi

c# - 避免在 ASP.NET MVC 5 应用程序的 Action 上使用 OnResultExecuted Filter

转载 作者:行者123 更新时间:2023-11-30 12:54:53 25 4
gpt4 key购买 nike

<分区>

我正在开发一个 MVC5 应用程序,它有一个 OnResultExecuted 过滤器,将响应缓存设置为始终“no-cache no-store”:

public class NoCacheActionFilter : ActionFilterAttribute
{
public override void OnResultExecuted(ResultExecutedContext filterContext)
{
HttpCachePolicyBase cache = filterContext.HttpContext.Response.Cache;
DateTime now = DateTime.UtcNow;

cache.SetCacheability(HttpCacheability.NoCache);
cache.SetExpires(now.AddDays(-1));
cache.SetNoStore();

base.OnResultExecuted(filterContext);
}
}

但是我有一个 Action 需要缓存它的结果,所以我在它上面设置了 OutputCahce 属性。

[OutputCache(Duration =300, Location =System.Web.UI.OutputCacheLocation.Client)]

但是,由于有过滤器,它永远不会被缓存。

我的问题是是否有办法避免仅针对该操作的过滤器。

谢谢。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com