1
resposta

Exception

Olá!

Na tela de login me aparece a mensagem "Exception has been thrown by the target of an invocation" depois que clico no botão ENTRAR. Coloquei um breakpoint no trecho

                        try
                    {
                        Logando = true;
                        var loginService = new LoginService();
                        var resultado = await loginService.FazerLogin(new Login(Usuario, Senha));

                        if (resultado.IsSuccessStatusCode)
                        {
                            string resultContent = await resultado.Content.ReadAsStringAsync();
                            LoginResult resultadoLogin = JsonConvert.DeserializeObject<LoginResult>(resultContent);
                            MessagingCenter.Send<Usuario>(resultadoLogin.usuario, "SucessoLogin");
                        }
                        else
                            MessagingCenter.Send(new LoginException(), "FalhaLogin");

                        Logando = false;
                    }
                    catch (Exception exc)
                    {
                        MessagingCenter.Send(new
                            LoginException("Except: Erro de comunicação com o servidor " + exc.Message, exc), "FalhaLogin");
                        Logando = false;
                    }

1) A variavel resultado.IsSuccessStatusCode mostra true 2) O resultcontent carrega o texto do json retornado pelo servidro 3) O resultadoLogin recebe com sucesso a conversão do resultContent 4) A linha do MessagingCenter é executada

Mesmo assim ele entra no bloco catch e exibe a mensagem de erro do LoginException. Mensagem: Exception has been thrown by the target of an invocation

Tem algum jeito de eu detectar de onde esta vindo este erro? Começou aparecer quando implementei alguns codigos da parte 4.

1 resposta

Oi Wellington, tudo bem?

Acho que o erro pode estar acontecendo no código que assina (subscribe) o evento "SucessoLogin". Pode postar aqui o código com MessagingCenter.Subscribe desse evento, para darmos uma olhada? obrigado!