Partager via


IActionConstraint Interface

Définition

Prend en charge la logique conditionnelle pour déterminer si une action associée est valide ou non pour être sélectionnée pour la demande donnée.

public interface class IActionConstraint : Microsoft::AspNetCore::Mvc::ActionConstraints::IActionConstraintMetadata
public interface IActionConstraint : Microsoft.AspNetCore.Mvc.ActionConstraints.IActionConstraintMetadata
type IActionConstraint = interface
    interface IActionConstraintMetadata
Public Interface IActionConstraint
Implements IActionConstraintMetadata
Dérivé
Implémente

Remarques

Les contraintes d’action ont pour effet secondaire de rendre une action avec une contrainte appliquée une meilleure correspondance qu’une autre sans.

Envisagez deux actions, « A » et « B » avec le même nom d’action et de contrôleur. L’action 'A' autorise uniquement la méthode HTTP POST (via une contrainte) et l’action 'B' n’a aucune contrainte.

Si une requête entrante est une requête POST, « A » est considéré comme la meilleure correspondance, car elle correspond à et a une contrainte. Si une requête entrante utilise un autre verbe, 'A' n’est pas valide pour la sélection en raison de sa contrainte, de sorte que 'B' est la meilleure correspondance.

Les contraintes d’action sont également regroupées en fonction de leur valeur d’ordre. Toutes les contraintes ayant la même valeur de groupe sont considérées comme faisant partie de la même stratégie d’application et seront exécutées dans la même étape.

Les étapes s’exécutent dans l’ordre croissant en fonction de la valeur de Order. Étant donné un ensemble d’actions qui sont des candidats à la sélection, l’étape suivante à exécuter est la valeur la plus faible de Order pour toute contrainte de tout candidat qui est supérieure à l’ordre de la dernière étape.

Une fois l’ordre de phase identifié, chaque action a toutes ses contraintes dans cette étape exécutées. Si une contrainte ne correspond pas, cette action n’est pas candidate à la sélection. Si des actions avec des contraintes dans l’état actuel sont toujours candidates, il s’agit des « meilleures » actions et ce processus se répète avec l’étape suivante sur l’ensemble des actions « meilleures ». Si, après le traitement des étapes suivantes des actions « meilleures », aucun candidat ne reste, ce processus se répète sur l’ensemble des actions « autres » de candidats de cette étape (celles sans contrainte).

Propriétés

Order

Ordre de contrainte.

Méthodes

Accept(ActionConstraintContext)

Détermine si une action est un candidat valide pour la sélection.

S’applique à