AspNetCore.Docs/aspnetcore/diagnostics/mvc1002.md

1.3 KiB

title description author monikerRange ms.author ms.date uid
MVC1002: Route attribute cannot be applied to page handler methods Learn about analysis rule MVC1002: Route attribute cannot be applied to page handler methods pranavkm >= aspnetcore-3.1 wpickett 10/22/2021 diagnostics/mvc1002

MVC1002: Route attribute cannot be applied to page handler methods

Value
Rule ID MVC1002
Fix is breaking or non-breaking Non-breaking

Cause

An attribute implementing xref:Microsoft.AspNetCore.Mvc.Routing.IRouteTemplateProvider was applied to a Razor Page handler method.

Rule description

Razor Page handler methods are selected after routing is completed, and consequently cannot contribute a route. Applying a route attribute such as HttpGet or HttpPost to a Razor Page handler is not supported.

public class IndexModel : PageModel
{
    [HttpGet("/my-url")]
    public IActionResult OnGet() => Page();
}

How to fix violations

Remove the route attribute from the handler. Routes can be specified for a Razor Page using an @page directive or by using conventions. For more information, see custom routes in Razor Pages.

When to suppress warnings

Don't suppress warnings from this rule.