ASP0004: não usar resultados de ação com manipuladores de rota
Valor | |
---|---|
ID da regra | ASP0004 |
Categoria | Uso |
Correção interruptiva ou sem interrupção | Sem interrupção |
Causa
Um delegado do manipulador de rotas retorna um valor que implementa IActionResult.
Descrição da regra
Os pontos de extremidade do manipulador de rotas não dão suporte à execução de instâncias do IActionResult
MVC. Retornar um IActionResult
que não implementa resulta IResult
na serialização da instância de resultado em vez de executar o resultado.
app.MapGet("/todos/{id}", (int id) => new JsonResult(new Todo { .. }));
Como corrigir violações
Para corrigir uma violação dessa regra, verifique se o manipulador de rotas do ponto de extremidade retorna um IResult tipo usando os Results métodos de extensão.
app.MapGet("/todos/{id}", (int id) => Results.Json(new Todo { .. }));
Quando suprimir avisos
Não suprima um aviso nessa regra. Retornar um IActionResult
que não implementa resulta IResult
na serialização da instância de resultado em vez de executar o resultado.