1.3 KiB
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.