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

    1. 四种过滤器(面向切面编程)。

    (1)Action过滤器、Result过滤器、AuthorizationFilter过滤器、Exception过滤器;

    (2)执行先后顺序:AuthorizationFilter->Action->Result;

    (3)Exception过滤器为全局过滤器;

    2. Action过滤器(加载Action方法前后调用)的用法

    (1)处理当前方法的过滤器;

    (2)处理当前类的过滤器;

    (3)全局过滤器;

    3. Result过滤器:加载View视图前后调用。

    4. filterContext上下文对象

    (1)Route中保存了当前请求的路由信息和路由对象,如果本次请求是请求了某个区域里的控制方法,还可以通过 filterContext.RouteData.DataTokens["area"] 获取区域名称。

    //string strAction = filterContext.RouteData.Values["action"].ToString();

    string strController = filterContext.RouteData.Values["controller"].ToString();

    string strArea = filterContext.RouteData.DataTokens["area"].ToString();

    (2)另一种方式获取请求的类名的方法名

    string strAction2 = filterContext.ActionDescriptor.ActionName;

    string strController2=

    filterContext.ActionDescriptor.ControllerDescriptor.ControllerName;

    (3)检查被请求方法是否加了MoneyAttribute特性(可以用作权限验证操作等)

    if (filterContext.ActionDescriptor.IsDefined(typeof(Filters.MoneyAttribute), false))

                {

                    filterContext.Result = new ContentResult { Content="跳过!"};

                }

    5. AuthorizationFilter过滤器(授权过滤器)

    *请求管道事件注册方法机制:方法命名规则,Application_ResolveRequestCache(Application_事件名称),请求管道自动将该方法注册到该事件。

    Global.asax的使用。

    6. Exception过滤器(全局异常处理类)

  • 相关阅读:
    CodeForces 52B Right Triangles 矩阵上的计数
    电影节
    怎样高速生成随机数
    VS2010版快捷键
    两个下拉框选择后取出这两个框的区间值
    vs操作快捷键
    输入框限制,条件是左边输入框输入的数字要小于右边输入框的值,两边输入框要为整型数字。
    DateTime.Parse
    清空文本输入框的值
    sql 随机函数newid()
  • 原文地址:https://www.cnblogs.com/HuoAA/p/4139250.html
Copyright © 2011-2022 走看看