Freigeben über


MVC1001: Filter können nicht auf Handlermethoden angewendet werden

Wert
Regel-ID MVC1001
Fix führt oder führt nicht zur Unterbrechung Nicht unterbrechend

Ursache

Ein Attribut, das IFilterMetadata implementiert, wurde auf eine Razor-Seitenhandlermethode angewendet.

Regelbeschreibung

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

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

Behandeln von Verstößen

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.