FilterContext.IsEffectivePolicy<TMetadata>(TMetadata) Метод

Определение

Возвращает значение, указывающее, является ли предоставленный IFilterMetadata параметр наиболее эффективной (наиболее конкретной) политикой, применяемой к действию, связанному FilterContextс .

public:
generic <typename TMetadata>
 where TMetadata : Microsoft::AspNetCore::Mvc::Filters::IFilterMetadata bool IsEffectivePolicy(TMetadata policy);
public bool IsEffectivePolicy<TMetadata> (TMetadata policy) where TMetadata : Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata;
member this.IsEffectivePolicy : 'Metadata -> bool (requires 'Metadata :> Microsoft.AspNetCore.Mvc.Filters.IFilterMetadata)
Public Function IsEffectivePolicy(Of TMetadata As IFilterMetadata) (policy As TMetadata) As Boolean

Параметры типа

TMetadata

Тип политики фильтра.

Параметры

policy
TMetadata

Экземпляр политики фильтра.

Возвращаемое значение

true Значение , если указанная IFilterMetadata политика является наиболее эффективной, в противном случае — falseзначение .

Комментарии

Метод IsEffectivePolicy<TMetadata>(TMetadata) используется для реализации общего соглашения для фильтров, которые определяют поведение переопределения. Если к одной и той же сквозной задаче может применяться несколько фильтров, определите общий интерфейс для фильтров (TMetadata) и реализуйте фильтры таким образом, чтобы все реализации вызывали этот метод, чтобы определить, следует ли им выполнять действия.

Например, глобальный фильтр может быть переопределен путем размещения атрибута фильтра в методе действия. Политику, применяемую непосредственно к методу действия, можно считать более конкретной.

Этот механизм переопределения зависит от правил порядка и область, которые система фильтров предоставляет для управления упорядочением фильтров. Реализовать этот протокол совместно до исполнителя фильтров. Система фильтров не имеет врожденного понятия переопределений, это рекомендуемое соглашение.

Применяется к