Teilen über


MVC1001: Filter können nicht auf Seitenhandlermethoden angewendet werden.

Wert
Regel-ID MVC1001
Korrektur ist blockierend oder nicht-blockierend Non-breaking

Ursache

Ein Attribut, das IFilterMetadata implementiert, wurde auf eine Razor Seiten-Handler-Methode angewendet.

Regelbeschreibung

Razor Seitenhandlermethoden werden ausgewählt, nachdem die MVC-Filterausführung gestartet wurde und folglich keine Filter zur Ausführung beitragen können. Das Anwenden eines Filters auf einen Razor Seiten-Handler wird nicht unterstützt und ist grundsätzlich falsch.

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

Wie man Verstöße behebt

Entfernen Sie den Filter aus dem Handler, und wenden Sie ihn auf das Seitenmodell an. Wenn ein Filter auf einen bestimmten Handler angewendet werden muss, sollten Sie mehrere Razor Seiten verwenden.

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

Wann sollten Warnungen unterdrückt werden?

Unterdrücken Sie keine Warnungen von dieser Regel.