Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
| Värde | |
|---|---|
| Regel-ID | ASP0005 | 
| Kategori | Användning | 
| Korrigeringen är antingen brytande eller icke-brytande | Oskiljbar | 
Orsak
Ett attribut tillämpades på en metoddefinition i stället för routningshanteraren i en routningshanterares slutpunkt.
Regelbeskrivning
När en slutpunkt deklareras bör attribut tillämpas på delegatparametern för att vara effektiva. Attributet Auktorisera i följande kodexempel anges till exempel inte på den registrerade slutpunkten:
app.MapGet("/todos/{id}", GetTodoById);
[Authorize]
Todo GetTodoById(int id)
{
  ...
}
Attributet måste placeras på routningshanterarparametern enligt följande kod:
app.MapGet("/todos/{id}", [Authorize] GetTodoById);
Todo GetTodoById(int id)
{
  ...
}
Så här åtgärdar du överträdelser
Om du vill åtgärda ett brott mot den här regeln kontrollerar du att slutpunktsattribut tillämpas på routningshanterarparametern:
app.MapGet("/todos/{id}", [Authorize] (int id) => {});
app.MapGet("/users/{id}", [Authorize] GetUserById);
När du ska ignorera varningar
Ignorera inte en varning från den här regeln. Felplacerade attribut kan resultera i oväntat beteende vid körning.
ASP.NET Core