Partilhar via


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

Valor
ID da regra MVC1001
A correção é invasiva ou não invasiva Inquebrável

Motivo

Um atributo que implementa IFilterMetadata foi aplicado a um método de manipulador de Página Razor.

Descrição da regra

Razor Os métodos do 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 é suportada 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 tiver que 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 desta regra.