Asp.net mvc 4 NoCache未按预期工作

Asp.net mvc 4 NoCache未按预期工作,asp.net-mvc-4,c#-4.0,browser-cache,Asp.net Mvc 4,C# 4.0,Browser Cache,我使用了一个名为[NoCache]的操作过滤器,通过按浏览器后退按钮,在登录后禁用登录页面的访问。代码如下所示 public class NoCacheAttribute : ActionFilterAttribute { public override void OnResultExecuting(ResultExecutingContext filterContext) { filterContext.HttpContext.R

我使用了一个名为[NoCache]的操作过滤器,通过按浏览器后退按钮,在登录后禁用登录页面的访问。代码如下所示

public class NoCacheAttribute : ActionFilterAttribute
    {
        public override void OnResultExecuting(ResultExecutingContext filterContext)
        {
            filterContext.HttpContext.Response.Cache.SetExpires(DateTime.UtcNow.AddDays(-1));
            filterContext.HttpContext.Response.Cache.SetValidUntilExpires(false);
            filterContext.HttpContext.Response.Cache.SetRevalidation(HttpCacheRevalidation.AllCaches);
            filterContext.HttpContext.Response.Cache.SetCacheability(HttpCacheability.NoCache);
            filterContext.HttpContext.Response.Cache.SetNoStore();

            base.OnResultExecuting(filterContext);
        }
    } 
然后我在登录页面中引用了它,如下所示

        [HttpPost]
        [NoCache]
        public ActionResult Index(Login objLogin)
        {

            return RedirectToAction("Index", "Blood");
        }
但结果出乎意料。将控件转移到url:
http://localhost:4506/Account/Login?ReturnUrl=%2fBlood


我怎样才能纠正这个问题?。谢谢。

这可能与表单身份验证功能有关。你需要它吗?如果没有,就不要使用它

有关详细信息,请参阅: