首页 > 代码库 > MVC Filter中加入验证并跳转

MVC Filter中加入验证并跳转

    public class BuildingFilter : ActionFilterAttribute    {        /// <summary>        /// 验证 Building Cookie add xia 验证是否登陆,是否选择案场        /// </summary>        /// <param name="filterContext"></param>        public override void OnActionExecuting(ActionExecutingContext filterContext)        {            var cookie = filterContext.HttpContext.Request.Cookies[FormsAuthentication.FormsCookieName];            if (cookie == null)            {                filterContext.Result = new RedirectResult("/Login/LoginOut");                return;            }            var buildingCookie = filterContext.HttpContext.Request.Cookies["Building"];            if (buildingCookie == null)            {                filterContext.Result = new RedirectResult("/BuildingList/Index");                return;            }            else            {                long buildingSysNo;                long relationSysNo;                //关系SysNo                long.TryParse(buildingCookie.Values["RelationSysNo"], out relationSysNo);                //案场SysNo                long.TryParse(buildingCookie.Values["BuildingSysNo"], out buildingSysNo);                if (buildingSysNo == 0 || relationSysNo == 0)                {                    filterContext.Result = new RedirectResult("/BuildingList/Index");                    return;                }            }            base.OnActionExecuting(filterContext);        }    }

我是验证是否登陆和是否选择案场【一并验证】

使用方法如下:

        /// <summary>        /// 签约列表 -GET        /// </summary>        /// <returns></returns>        [BuildingFilter]        public ActionResult ContractOrderList()        {            return View();        }

 

MVC Filter中加入验证并跳转