.net mvc权限过滤(ActionFilterAttribute)

一、过滤标签类

AuthorityFilterAttribute.cs

    public class AuthorityFilterAttribute : ActionFilterAttribute
    {
        /// <summary>
        /// 验证用户权限
        /// </summary>
        /// <param name="filterContext"></param>
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            var descriptor = filterContext.ActionDescriptor.ControllerDescriptor;
            if (descriptor.IsDefined(typeof(AllowAnonymousAttribute), true))
                return;
            var action = filterContext.ActionDescriptor;
            if (action.IsDefined(typeof(AllowAnonymousAttribute), true))
                return;

            bool isPass;
            if (!isPass)
            {
                filterContext.Result = new RedirectResult("http://www.test.com");
            }
        }
    }

二、在 MVC 项目的 App_Start 文件夹下,找到 FilterConfig.cs 文件,添加过滤标签

filters.Add(new AuthorityFilterAttribute());

  如下图:

 

posted @ 2018-10-29 10:48  by-lhc  阅读(471)  评论(0编辑  收藏  举报