Compartilhar via


MVC1001: Os filtros não podem ser aplicados aos métodos de manipulador de página

Value
ID da regra MVC1001
Correção é disruptiva ou não disruptiva Non-breaking

Motivo

Uma implementação do atributo de IFilterMetadata foi aplicada ao método de manipulador de Página Razor.

Descrição da regra

Razor Os métodos de manipulador de página são selecionados após o início da execução do filtro MVC e, consequentemente, não podem contribuir com filtros para execução. A aplicação de um filtro a um Razor manipulador de página não tem suporte e está sempre incorreta.

public class IndexModel : PageModel
{
    [MyFilter]
    public IActionResult OnGet() => Page();
}

Como corrigir violações

Remova o filtro do manipulador e aplique-o ao modelo de página. Se um filtro precisar ser aplicado a um manipulador específico, considere o uso de várias Razor Páginas.

[MyFilter]
public class IndexModel : PageModel
{
    public IActionResult OnGet() => Page();
}

Quando suprimir avisos

Não suprima avisos dessa regra.