zoukankan      html  css  js  c++  java
  • MVC过滤器

    新建自己的过滤器.cs,方法和和视图过滤器都继承
    ActionFilterAttribute
    方法重写
    OnActionExecuting
    OnActionExecuted
     
    视图重写
    OnResultExecuting
    OnResultExecuted
    只要是Action方法都会交内部处理调用这二个方法 
     
    而filterContext.RouteData.Values["controller"].ToString();filterContext.RouteData.Values["action"].ToString();可以直接拿到从Url传过来的方法名和控制器名
    RouteData里面主要储存了匹配的路由信息
    如果本次请求的是请求了某个区域里的控制器方法,还可以通过
    filterContext.RouteData.DataTokens["area"].Value.ToString();拿到区域名称
     
    补充Filter:
     string actionName = filterContext.ActionDescriptor.ActionName;
                string controllerName = filterContext.ActionDescriptor.ControllerDescriptor.ControllerName;
                //检查 被 请求方法是否加了MoneyAttribute特性
                if (filterContext.ActionDescriptor.IsDefined(typeof(Filters.MoneyAttribute), false))
                {
                    //直接为请求设置返回结果,而不执行对应的Action方法,可见html源码,也不执行OnActionExecuted,但是是会执行Result过滤器和生成Result结果
                    //filterContext.Result = new ContentResult();
                    filterContext.Result = new ContentResult() { Content = "<br />哈哈被跳过了吧<br />" };
     
                }
     
    走向图如下:
  • 相关阅读:
    excel的支持——xlrd模块、xlwt模块的安装
    安装wxpython——python程序GUI图形界面使用
    if __name__ == '__main__':
    U盘装win7
    cgitb.enable()浏览器报告错误,容易定位问题
    python_study_9-生成式
    python_study_10-单例模式
    python_自动化_1-读取excel
    python_study_8-字符串/列表/字典使用方法
    python_study_7-异常处理
  • 原文地址:https://www.cnblogs.com/caigen029/p/3575684.html
Copyright © 2011-2022 走看看