首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在OnActionExecuting中重定向不起作用

在OnActionExecuting中重定向不起作用
EN

Stack Overflow用户
提问于 2016-09-23 18:40:57
回答 1查看 2.2K关注 0票数 1

我试图重定向一个未通过OnactionExecuting()进行身份验证的访问者,以便它覆盖我的整个控制器,但它几乎就像是被完全跳过了。可以在OnActionExecuting()中重定向吗?

代码语言:javascript
复制
  protected override void OnActionExecuting(ActionExecutingContext filterContext)
{

    base.OnActionExecuting(filterContext);
    if (SimpleAuth.isAuth())
    {
        RedirectToAction("Login", "Users");
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-23 18:42:45

您不能在过滤器中使用RedirectToActionRedirectToActionController类的成员。这就是为什么你可以在动作方法中调用这个方法,这些方法是继承自Controller类的类的成员。

但是,如果我们讨论的是筛选器,则必须将filterContext.Result设置为新的RedirectToRouteResult

代码语言:javascript
复制
 filterContext.Result = new RedirectToRouteResult(new RouteValueDictionary(
                                new
                                {
                                    controller = "Users",
                                    action = "Login"
                                }));
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39658778

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档