none
Web.api e Excessoes RRS feed

  • Pergunta

  • Possuo uma web.api que chama alguns metodos de uma outra camada.

    ex: 

    [HttpPost("Testando")]
    public IActionResult Testando(string nome)
            {
                OutraCamada.Metodo(nome);
                return Ok();
            }

    Acontece que se tratando de uma Web.API eu gostaria de sempre estar retornando o statuscode e alguma mensagem/objeto.
    No entanto se algo ocorrer de errado em OutraCamada.Metodo, uma excessao sera lancada e minha web.api nao retornara um statuscode ou mensagem que eu gostaria. (Retornara somente erro 500, sem a mensagem de erro vindo de OutraCamada.Metodo)

    1. Qual a melhor forma de implementar isso ?
    2. Seria necessario ter 2 try/catch (1 na minha web.api e outro na minha OutraCamada.Metodo) ?

    terça-feira, 3 de julho de 2018 14:36

Respostas

  • >1. Qual a melhor forma de implementar isso ?

    Leia o artigo : https://www.codeproject.com/Articles/733512/Exception-Handling-in-WebAPI

    >2. Seria necessario ter 2 try/catch (1 na minha web.api e outro na minha OutraCamada.Metodo) ?

    Um Try-Cach somente na Web.API. É ela que deve fazer o tratamento de erro e retornar a açao devida.

    Att


    William John Adam Trindade
    Analyste-programmeur


    Sogi Informatique ltée
    If you found this post helpful, please "Vote as Helpful". If it actually answered your question, remember to "Mark as Answer". Se achou este post útil, por favor clique em "Votar como útil". Se por acaso respondeu sua dúvida, lembre de "Marcar como Resposta".

    quarta-feira, 4 de julho de 2018 15:22
    Moderador
  • Fica a dica para não usar try/catch dentro de try/catch, por questão de boas práticas e também tem um custo de performance e memória, um pequeno custo, mas tem...

    Outra sugestão bacana seria criar um controller genérico e neste controller criar uma forma de manipular as exceções.


    Se a resposta foi útil por favor qualifique! Janderson Candido de Mattos - MCPD

    quarta-feira, 4 de julho de 2018 16:49

Todas as Respostas

  • >1. Qual a melhor forma de implementar isso ?

    Leia o artigo : https://www.codeproject.com/Articles/733512/Exception-Handling-in-WebAPI

    >2. Seria necessario ter 2 try/catch (1 na minha web.api e outro na minha OutraCamada.Metodo) ?

    Um Try-Cach somente na Web.API. É ela que deve fazer o tratamento de erro e retornar a açao devida.

    Att


    William John Adam Trindade
    Analyste-programmeur


    Sogi Informatique ltée
    If you found this post helpful, please "Vote as Helpful". If it actually answered your question, remember to "Mark as Answer". Se achou este post útil, por favor clique em "Votar como útil". Se por acaso respondeu sua dúvida, lembre de "Marcar como Resposta".

    quarta-feira, 4 de julho de 2018 15:22
    Moderador
  • Fica a dica para não usar try/catch dentro de try/catch, por questão de boas práticas e também tem um custo de performance e memória, um pequeno custo, mas tem...

    Outra sugestão bacana seria criar um controller genérico e neste controller criar uma forma de manipular as exceções.


    Se a resposta foi útil por favor qualifique! Janderson Candido de Mattos - MCPD

    quarta-feira, 4 de julho de 2018 16:49