验证用户是否登录的Attribute

    public class UserAuthorizeAttribute : ActionFilterAttribute
    {
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            if (filterContext.HttpContext == null)
                throw new ArgumentNullException("filterContext.HttpContext is null!");

            if (filterContext.HttpContext.Session == null)
                throw new ArgumentNullException("filterContext.HttpContext.Session is null!");

            if (filterContext.HttpContext.Session["CurrentUser"] == null )
            {
                if (filterContext.HttpContext.Request.IsAjaxRequest())
                {
                    WebResults r = new WebResults("10012", "登陆超时", null);
                    filterContext.Result = new ContentResult { Content = JsonConvert.SerializeObject(r) };
                }
                else
                {
                    filterContext.Result = new RedirectToRouteResult(new System.Web.Routing.RouteValueDictionary(new { Controller = "Home", action = "Login" }));
                }
            }
        }
    }

 

posted @ 2017-06-08 14:35  花生打代码会头痛  阅读(107)  评论(0)    收藏  举报