Sdílet prostřednictvím


MVC1001: Filtry nelze použít u metod obslužné rutiny stránky.

Hodnota
Identifikátor pravidla MVC1001
Oprava je destruktivní nebo nedestruktivní Nezlomitelný

Příčina

Atribut implementující IFilterMetadata byl aplikován na metodu Razor obslužné rutiny stránky.

Popis pravidla

Razor Metody obslužné rutiny stránky jsou vybrány po zahájení vykonávání filtru MVC a nemohou proto přispívat dalšími filtry, které by se měly vykonat. Použití filtru na obslužnou rutinu stránky Razor není podporováno a je vždy chybné.

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

Jak opravit porušení

Odstraňte filtr ze zpracovatele a aplikujte ho na model stránky. Pokud se filtr musí použít u konkrétní obslužné rutiny, zvažte použití více Razor stránek.

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

Kdy potlačit upozornění

Nepotlačujte upozornění z tohoto pravidla.