1
resposta

Dúvidas sobre custo das exceções em alguns cenários.

Eu tenho muitas dúvida quanto ao custo do uso de exceções em alguns cenários, vou tentar descrever algo simples. Imaginando uma aplicação em camadas (Repository, Service, Controller)

Qual a melhor prática ou padrão para devolver uma inconsistência para o controlador de uma api. Quando devo me preocupar em laçar uma exceção para ser tratado na controller, ou retornar uma informação mais resumida como true ou false. O lançamento de exceções pode ser muito custoso em cenários de grande escala de execução/acesso da aplicação?

1 resposta

Bom dia Robson! Tudo bem?

Referente a criação das apis, quando ocorre alguma exceção, é recomendado retornar um BadRequest com os detalhes dessa exceção, facilitando a sua manutenção. Vou dar um exemplo básico na api:



[httpPost]
public IActionResult InserirNoBancoDeDados(Classe objeto)
try
{

**escolher o que fazer aqui**

Return Ok();

}
catch (Exception ex)
{
Return BadRequest(ex.message)
}

você pode substituir por um true e false também, ficaria assim:

[httpPost]
public IActionResult<bool> InserirNoBancoDeDados(Classe objeto)
try
{

**escolher o que fazer aqui**

Return Ok(true);

}
catch (Exception ex)
{
Return BadRequest(false)

    // OU ENTAO retornar um código 200 com a resposta

    Return Ok(false)
}