Luk*_*uke 7 c# asp.net-mvc action-filter
每个过滤器类型中都有一个过滤器Order,它指定了运行顺序.
到目前为止有道理......然而它变得奇怪.
在每个过滤器类型和顺序中还有一种排序方法,它表示为以下值的枚举:
public enum FilterScope
{
First = 0,
Global = 10,
Controller = 20,
Action = 30,
Last = 100,
}
Run Code Online (Sandbox Code Playgroud)
Global,Controller和Action在动作过滤器的运行顺序中有什么影响?
例如:
如果我有两个动作过滤器,它们的运行顺序分别为1和FilterScopeController和Action.
除了在另一个之前订购一个之外,什么轴承做什么Controller和Action做什么?
进一步的奇异
根据该对FilterScope提供过滤器第三级排序.过滤器的顺序是什么Controller,Global或者Action一个顺序绝不仅限于a Controller,Action而不一定全局应用?它不是订单的描述.
此外,如果它确实提供了第三级过滤,为什么它仅限于5个选项?
Filter对象,即实际具有属性的对象Scope,是根据用法构造的 - 当您将过滤器添加到全局应用程序过滤器时,会使用ofFilter构造对象。类似地,当从控制器和操作收集过滤器属性时,将分别使用和 的范围构造对象。ScopeGlobalFilterControllerAction
我不完全确定 aFilter与 a ScopeofFirst或Last实际上是如何创建的。
这些规则指定为说明如果您在全局级别和操作级别使用相同的Order值声明了一个过滤器,则如何应用平局打破 - 这比在同一级别声明的过滤器更值得关注,其中您需要手动确保每个过滤器使用唯一的Order(如果您关心排序)。
| 归档时间: |
|
| 查看次数: |
1197 次 |
| 最近记录: |