使用ActionFilterAttribute和RedirectResult将所有页面访问重定向到单个页面

时间:2018-09-21 05:50:08

标签: redirect model-view-controller actionfilterattribute

我注册了一个全局过滤器,希望在某些情况下对所有页面的访问将重定向到单个页面。代码如下:

    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new CustomFilter());
    }
    public class CustomFilter : ActionFilterAttribute
    {
        public override void OnActionExecuting(ActionExecutingContext actionContext)
        {
            if (condition met)
            {
                actionContext.Result = new RedirectResult("~/Account/custom");                           
            }
        }
    }

我现在遇到的问题是“ RedirectResult”不断被调用,并且出现“此页面具有重定向循环”错误。发生这种情况的原因是,重定向时将再次调用此过滤器,然后重定向...从而导致无限循环。有可能做到这一点吗?

我已经有身份验证,这只是另一个要求。

0 个答案:

没有答案