asp.net-mvc – 如何阻止用户在MVC3应用程序上登录/注册和其他非经过身份验证的页面?

一旦用户登录到我使用表单身份验证的站点,那么如何阻止用户登录注册页面,如果他已经登录寄存器. 两种方式“脱离我的头脑”: 1 – 自定义操作过滤器,如果用户已登录,则会从页面重定向用户. public class RedirectAuthenticatedRequests : ActionFilterAttribu

一旦用户登录到我使用表单身份验证的站点,那么如何阻止用户登录&注册页面,如果他已经登录&寄存器.

解决方法

两种方式“脱离我的头脑”:

1 – 自定义操作过滤器,如果用户已登录,则会从页面重定向用户.

public class RedirectAuthenticatedRequests : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        if(filterContext.HttpContext.Request.IsAuthenticated) {
            filterContext.Result = new RedirectToRouteResult(
                new RouteValueDictionary(new {
                        controller = "SomeController",action = "SomeAction"
                }
            ));
        }

        base.OnActionExecuting(filterContext);
    }
}

2 – 如果用户已登录,请简单检查登录操作方法.

if(Request.IsAuthenticated) return RedirectToAction("SomeOtherView");

作者: dawei

【声明】:永州站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部