7

我的 MVC 4 应用程序中有 2 个全局操作过滤器,我使用 RegisterGlobalFilters 在 Filter.config 文件中注册了它们。我需要它们以特定的顺序执行。

我知道如何为控制器特定的过滤器指定顺序,但是如何为我的全局过滤器指定顺序和范围?是按照他们注册的顺序吗?

4

2 回答 2

11

由于到目前为止还没有给出关于如何在 RegisterGlobalFilters 中指定全局过滤器的顺序的答案,这是我的答案:

您可以通过传入第二个参数在 Add 方法中指定顺序:

public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
    filters.Add(new HandleErrorAttribute(), 1);
    filters.Add(new LogFilter(), 2);
}
于 2014-08-06T20:31:19.440 回答
5

在这篇 MSDN 文章中,向下滚动到Filter Order部分。有OrderScope属性允许您控制执行顺序。

于 2013-08-23T17:08:02.063 回答