温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Understanding Action Filters-理解Action筛选器

发布时间:2020-08-01 12:11:39 来源:网络 阅读:608 作者:追逐779 栏目:编程语言

原文链接:Understanding Action Filters

一、定义

Action筛选器一个属性可以应用控制器Action方法 — — 整个控制器 — — 修改其中执行Action方式

  • 1.OutputCache – Action筛选器缓存 控制器的Action输出 指定时间

  • 2.HandleError – Action筛选器处理引发控制器Action执行错误

  • 3.Authorize – 操作筛选器使可以限制特定用户角色访问

可以创建自己自定义操作筛选器例如可能创建一个自定义操作筛选器执行自定义身份验证系统或者可能创建操作筛选器修改视图数据返回一个控制器动作

二、默认分类

ASP.NET MVC 框架支持四种不同类型筛选器

  1. Authorization filters – Implements the IAuthorizationFilter attribute.

  2. Action filters – Implements the IActionFilter attribute.

  3. Result filters – Implements the IResultFilter attribute.

  4. Exception filters – Implements the IExceptionFilter attribute.

执行顺序:授权筛选器优先级最高;异常筛选器优先级最低。

  1. Authorization筛选器用来实现身份验证和授权控制器操作。例如,Authorize筛选器是Authorization筛选器示例。

  2. Action筛选器包含的逻辑,执行之前和之后的控制器操作执行。您可以使用操作筛选器,例如,修改控制器操作返回的视图数据。

  3. Result筛选器包含的逻辑,执行之前和之后执行视图结果。例如,您可能想要修改视图结果在视图呈现到浏览器之前。

  4. Exception筛选器是最后一种类型的筛选器来运行。异常筛选器可用于处理由您的控制器操作或控制器操作结果引发的错误。您还可以使用异常筛选器记录错误。

    不同类型筛选器特定顺序执行如果控制其中执行相同类型筛选器顺序然后可以设置筛选器的 Order 属性

    所有操作筛选器基类 System.Web.Mvc.FilterAttribute 如果执行特定类型筛选器然后需要创建一个筛选器基类继承实现一个更多 IAuthorizationFilter IActionFilter IResultFilter ExceptionFilter 接口

三、ActionFilterAttribute基类

        为了更容易执行自定义操作筛选器ASP.NET MVC 框架提供 ActionFilterAttribute 基类实现 IActionFilter IResultFilter 接口筛选器继承

  从技术上讲 ActionFilterAttribute 继承操作筛选器结果筛选器然而,整体来说,操作筛选器用于任何类型 ASP.NET MVC 框架筛选器

  ActionFilterAttribute基类有四个方法可以被重写:

  • OnActionExecuting – This method is called before a controller action is executed.

  • OnActionExecuted – This method is called after a controller action is executed.

  • OnResultExecuting – This method is called before a controller action result is executed.

  • OnResultExecuted – This method is called after a controller action result is executed.


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI