加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc-4 – 如何将用户没有正确的角色重定向到Not Permitt

发布时间:2020-12-16 06:49:17 所属栏目:asp.Net 来源:网络整理
导读:在MVC 4项目中使用SimpleMembershipProvider时,如果没有正确角色的用户运行操作,他将被重定向到Account / Login.如何将用户重定向到我自己的“没有足够的权限查看页面”操作? 解决方法 您可以覆盖该方法来执行此操作 public class CustomAuthorizeAttribute
在MVC 4项目中使用SimpleMembershipProvider时,如果没有正确角色的用户运行操作,他将被重定向到Account / Login.如何将用户重定向到我自己的“没有足够的权限查看页面”操作?

解决方法

您可以覆盖该方法来执行此操作

public class CustomAuthorizeAttribute : AuthorizeAttribute {
    public override void OnAuthorization(AuthorizationContext filterContext) {
        base.OnAuthorization(filterContext);

        if (filterContext == null) {
            throw new ArgumentNullException("filterContext");
        }

        if ({your code detecting no user is logged}) {
            filterContext.Result = new RedirectResult(System.Web.Security.FormsAuthentication.LoginUrl + "?returnUrl=" + filterContext.HttpContext.Server.UrlEncode(filterContext.HttpContext.Request.RawUrl));
            return;
        }

        if ({your code detecting that the user has no access}) {
            var ViewData = new ViewDataDictionary();
            ViewData.Add("Title","No access");
            ViewData.Add("Description","blah blah blah blah blah blah blah ");
            filterContext.Result = new ViewResult { ViewName = "~/Views/Shared/NoAccess.cshtml",ViewData = ViewData };
        }

    }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读