IActionConstraint Interface
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Dá suporte à lógica condicional para determinar se uma ação associada é válida ou não para ser selecionada para a solicitação fornecida.
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
- Derivado
- Implementações
Comentários
As restrições de ação têm o efeito secundário de fazer uma ação com uma restrição aplicada a uma correspondência melhor do que uma sem.
Considere duas ações, 'A' e 'B' com a mesma ação e nome do controlador. A ação 'A' só permite o método HTTP POST (por meio de uma restrição) e a ação 'B' não tem restrições.
Se uma solicitação de entrada for um POST, 'A' será considerado a melhor correspondência porque corresponde e tem uma restrição. Se uma solicitação de entrada usar qualquer outro verbo, 'A' não será válido para seleção devido à restrição, portanto, 'B' é a melhor correspondência.
As restrições de ação também são agrupadas de acordo com o valor da ordem. Todas as restrições com o mesmo valor de grupo são consideradas parte da mesma política de aplicativo e serão executadas no mesmo estágio.
Os estágios são executados em ordem crescente com base no valor de Order. Dado um conjunto de ações que são candidatas à seleção, a próxima etapa a ser executada é o valor mais baixo de Order para qualquer restrição de qualquer candidato que seja maior que a ordem da última etapa.
Depois que a ordem de estágio é identificada, cada ação tem todas as suas restrições nesse estágio executadas. Se alguma restrição não corresponder, essa ação não será candidata à seleção. Se alguma ação com restrições no estado atual ainda for candidata, essas serão as ações "melhores" e esse processo será repetido com o próximo estágio no conjunto de ações "melhores". Se, depois de processar as fases subsequentes das ações "melhores", nenhum candidato permanecer, esse processo se repetirá no conjunto de "outras" ações candidatas dessa fase (aquelas sem restrição).
Propriedades
Order |
A ordem de restrição. |
Métodos
Accept(ActionConstraintContext) |
Determina se uma ação é uma candidata válida para seleção. |