码迷,mamicode.com
首页 > Web开发 > 详细

.Net Core MVC 过滤器(一)

时间:2017-04-13 15:27:28      阅读:252      评论:0      收藏:0      [点我收藏+]

标签:成功   alt   microsoft   影响   pipeline   github   action   except   资源   

1.过滤器
 
过滤器运行在MVC Action Invocation Pipeline(MVC Action 请求管道),我们称它为Filter Pipleline(过滤器管道),Filter Pipleline 运行在MVC选择Action执行前,因此我们可以在Action执行前做一些处理,例如:权限。
请求顺序如图:
技术分享
2.过滤器类型
 
每个过滤器在Filter Pipleline的不同阶段执行。
  • Authorization filters (权限过滤器)   Authorzation filters 在Filter Pipleline中首先运行,并用于决定当前用户是否有请求权限。如果没有请求权限直接返回。
  • Resource filters  (资源过滤器)    Resource filters 在Authorzation后面运行,同时在后面的其它过滤器完成后还会执行。Resource filters 实现缓存或其它性能原因返回。因为它运行在模型绑定前,所以这里的操作都会影响模型绑定。
  • Action filters  (方法过滤器)    Action filters会在执行Action方法前后被调用。这个可以在方法中用来处理传递参数和处理方法返回结果。
  • Exception filters   (异常过滤器)    Exception filters 被应用全局策略处理未处理的异常发生前任何被写入响应体。
  • Result filters   (结果过滤器)    Result filters 可以在执行Action结果之前执行,且执行Action成功后执行,使用逻辑必须围绕view或格式化执行结果。

下图是过滤器管道的先后执行顺序:

技术分享
大家可以下载Demo,自己在代码断点上面执行两次 一次请求是action正常 一次请求是action异常
 
上面是个人翻译即一些理解,比较初级,对这个还会写一些,如果有错误欢迎指正
 

.Net Core MVC 过滤器(一)

标签:成功   alt   microsoft   影响   pipeline   github   action   except   资源   

原文地址:http://www.cnblogs.com/chengxuzhimei/p/6703858.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!