Muh*_*hid 53 asp.net-mvc filter action-filter asp.net-mvc-3
在MVC中,我们可以使用不同的过滤器来装饰动作方法
[HttpPost]
[Authorize]
public ActionResult mymethod(){}
Run Code Online (Sandbox Code Playgroud)
HttpPost派生自MethodSelectorAttribute(可能是间接的)Authorize属性继承自ActionFilterAttribute.
我的问题是:它们在MVC请求管道中执行的顺序是什么?我试图在MVC源代码中搜索,但未能找到相关的代码位.
Era*_*nga 74
过滤器按以下顺序运行:
例如,授权过滤器首先运行,异常过滤器最后运行.在每个过滤器类型中,Order值指定运行顺序.在每个过滤器类型和顺序中,Scope枚举值指定过滤器的顺序.此枚举定义以下过滤器作用域值(按其运行顺序):
从MSDN中提取
Pro*_*ega 22
为了节省您的时间,您可以按照以下方式设置订单:
[MyCustomContextFilter(Order=1)]
Run Code Online (Sandbox Code Playgroud)
索引是0基础,所以你可以做0,1,2等...
应该注意的是,仅仅因为过滤器在基类上并不能告诉MVC首先应用它:(.
| 归档时间: |
|
| 查看次数: |
36484 次 |
| 最近记录: |