Click or drag to resize
JobFilterScope Enumeration
Defines values that specify the order in which Hangfire filters run within the same filter type and filter order.

Namespace: Hangfire.Common
Assembly: Hangfire.Core (in Hangfire.Core.dll) Version: 1.5.0.0
Syntax
public enum JobFilterScope
Members
  Member nameValueDescription
Global10 Specifies an order before the Type.
Type20 Specifies an order after the Global and before the Method.
Method30 Specifies an order after the Type.
Remarks
Hangfire supports the following types of filters:
  1. Client / Server filters, which implement IClientFilter and IServerFilter interfaces respectively.
  2. State changing filters, which implement the IElectStateFilter interface.
  3. State changed filters, which implement the IApplyStateFilter interface.
  4. Client / Server exception filters, which implement IClientExceptionFilter or IServerExceptionFilter interfaces respectively.
Порядок запуска указанных типов фильтров строго фиксирован, например, фильтры исключений всегда выполняются после всех остальных фильтров, а фильтры состояний всегда запускаются внутри клиентских и серверных фильтров. Внутри же одного типа фильтров, порядок выполнения сначала определяется значением Order, а затем значением Scope. Перечисление JobFilterScope определяет следующие значения (в порядке, в котором они будут выполнены):
  1. Global.
  2. Type.
  3. Method.
Для примера, клиентский фильтр, у которого свойство Order имеет значение 0, а значение filter scope равно Global, будет выполнен раньше фильтра с тем же самым значением Order, но c filter scope, равным Type. Значения Scope задаются, в основном, в реализациях интерфейса IJobFilterProvider. Так, класс JobFilterCollection определяет значение Scope как Global. Порядок выполнения фильтров одинакового типа, с одинаковым значением Order и с одинаковым scope, не оговаривается.
See Also