2
respostas

Exibir mensagem de erro no retorno

Olá provessor, como faco para exibir essas mensagens de erro no retorno e nao no console.

2 respostas

Olá Kayo,

Uma possível solução seria utilizar o retorno do método CreateAsync do UserManager, os erros encontra-se dentro da propriedade Erros.

No exemplo abaixo peguei a descrição dos erros e retornei em uma única string chamada de erroMessage

UserApplication user = _mapper.Map<UserApplication>(createUserDto);

            var result = await _userManager.CreateAsync(user, createUserDto.Password);
            if (result.Succeeded)
            {
                return Result.Ok();
            }
            else
            {
                string erroMessage = "";
                foreach (var e in result.Errors)
                {
                    if (erroMessage.Trim().Length==0)
                    {
                        erroMessage = erroMessage + e.Code + " - " + e.Description;
                    }
                    else
                    {
                        erroMessage = System.Environment.NewLine + erroMessage + e.Code + " - " + e.Description;
                    }

                }
                return Result.Fail(erroMessage);
            }

Salve Kayo o/

Eu, estava tendo o mesmo problema, seguindo os mesmos exemplos que o professor digitava eu não estava conseguindo retorna as mensagens de erro e nem o token no postman, e vi que era por causa da versão do fluent results que eu estava utilizando, alterando a versão (estava utilizando a 3.0) para a mesma que o professor esta utilizando (2.5) conseguir exibir as mensagens no retorno.

Verifique sua versão e caso esteja diferente altere ela, provavelmente deve resolver seu problema.