• 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();
            }
  • 相关阅读:
    禁止在工作流设计器启动持续活动的重新编译
    设计流程 工作流
    workflow 工作流
    访问调度控制 时间控件
    如何:实现一个视图项目
    Python多线程之threading.Thread实现
    gcc 编译流程分析
    如何编写Makefile?
    linux 文件夹的颜色代表什么意思
    STL容器的迭代器失效的原因
  • 原文地址:https://www.cnblogs.com/xiashenbin/p/4171134.html
Copyright © 2020-2023  润新知