Поделиться через


IActionConstraint Интерфейс

Определение

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

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
Производный
Реализации

Комментарии

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

Рассмотрим два действия: "A" и "B" с одним и тем же действием и именем контроллера. Действие "A" допускает только метод HTTP POST (с помощью ограничения), а действие B не имеет ограничений.

Если входящий запрос является post, лучшим совпадением считается "A", так как он соответствует и имеет ограничение. Если во входящем запросе используется любая другая команда, "A" не будет допустимой для выбора из-за ограничения, поэтому "B" лучше всего подходит.

Ограничения действий также группируются в соответствии со значением порядка. Любые ограничения с одинаковым значением группы считаются частью одной политики приложения и будут выполняться на одном этапе.

Этапы выполняются в порядке возрастания на основе значения Order. Учитывая набор действий, которые являются кандидатами для выбора, следующий этап выполнения является наименьшим Order значением для любого ограничения любого кандидата, которое больше, чем порядок последнего этапа.

После определения порядка этапа каждое действие имеет все свои ограничения на этом этапе выполнения. Если какое-либо ограничение не соответствует, это действие не является кандидатом для выбора. Если какие-либо действия с ограничениями в текущем состоянии по-прежнему являются кандидатами, то это "лучшие" действия, и этот процесс будет повторяться со следующим этапом в наборе "лучших" действий. Если после обработки последующих этапов "лучших" действий кандидаты не остаются, этот процесс будет повторяться в наборе "других" действий кандидатов с этого этапа (без ограничений).

Свойства

Order

Порядок ограничений.

Методы

Accept(ActionConstraintContext)

Определяет, является ли действие допустимым кандидатом для выбора.

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