我的MVC 4应用程序中有2个全局操作过滤器,我使用RegisterGlobalFilters在Filter.config文件中注册。我需要它们按特定顺序执行。
我知道如何指定控制器特定过滤器的顺序,但如何指定全局过滤器的顺序和范围?是按照他们注册的顺序?
答案 0 :(得分:8)
由于没有回答如何在RegisterGlobalFilters中指定全局过滤器的顺序,这是我的答案:
您可以通过传入第二个参数来指定Add方法中的顺序:
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new HandleErrorAttribute(), 1);
filters.Add(new LogFilter(), 2);
}
答案 1 :(得分:5)
In this MSDN article向下滚动到过滤订单部分。有Order
和Scope
属性允许您控制执行顺序。