FilterContext.IsEffectivePolicy<TMetadata>(TMetadata) Methode

Definition

Gibt einen Wert zurück, der angibt, ob die bereitgestellte die effektivste (spezifischste) Richtlinie ist, die auf die aktion angewendet IFilterMetadata wird, die zugeordnet FilterContext ist.

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

Typparameter

TMetadata

Der Typ der Filterrichtlinie.

Parameter

policy
TMetadata

Die Filterrichtlinieninstanz.

Gibt zurück

Boolean

TRUE, wenn die IFilterMetadata bereitgestellte die effektivste Richtlinie ist, andernfalls FALSE.

Hinweise

Die IsEffectivePolicy<TMetadata>(TMetadata) -Methode wird verwendet, um eine allgemeine Konvention für Filter zu implementieren, die ein überschreibende Verhalten definieren. Wenn mehrere Filter für dasselbe übergreifende Problem gelten können, definieren Sie eine gemeinsame Schnittstelle für die Filter ( ), und implementieren Sie die Filter so, dass alle Implementierungen diese Methode aufrufen, um zu bestimmen, ob sie Maßnahmen TMetadata ergreifen sollten.

Beispielsweise kann ein globaler Filter überschrieben werden, indem ein Filterattribut für eine Aktionsmethode platziert wird. Die Richtlinie, die direkt auf die Aktionsmethode angewendet wird, kann als spezifischer betrachtet werden.

Dieser Mechanismus zum Überschreiben basiert auf den Regeln der Reihenfolge und des Bereichs, die das Filtersystem zur Steuerung der Reihenfolge von Filtern bietet. Es liegt an der Implementierung von Filtern, dieses Protokoll kooperativ zu implementieren. Das Filtersystem hat keine überschreibenden Konzepte. Dies ist eine empfohlene Konvention.

Gilt für: