none
Chamando método Async no LoadPage() RRS feed

  • Discussão Geral

  • Estou com esse método aqui: https://gist.github.com/guilhermecarvalhocarneiro/9189531 sendo chamado no método MainPage da minha classe MainPage, só que após chamar o método nada acontece e não tenho o resultado que preciso. É possível chamar um método async no MainPage? Se sim porque não estou recebendo os resultado? nenhum erro é gerado.

    Guilherme Carvalho

    • Tipo Alterado Giovani Cr terça-feira, 4 de março de 2014 15:24
    segunda-feira, 24 de fevereiro de 2014 14:46

Todas as Respostas

  • Oi Guilherme.

    Já tentou chamar esse método no evento onnavigatedto da pagina?

    segunda-feira, 24 de fevereiro de 2014 18:33
  • Testei sim não funcionou. Fiz um outro teste e coloquei o método sendo disparado no click de um button e aí funcionou. Será alguma limitação dos métodos MainPage() e OnNavigatedTo que não disparam métodos Async?

    Guilherme Carvalho

    segunda-feira, 24 de fevereiro de 2014 20:27
  • Você pode colocar aqui onde você está chamando o seu método async.

    Eu já fiz isso, então não existe limitação.

    O que eu vi de diferente do seu código pro meu. É que meu método async retorna uma Task e não simplesmente void.

    mais ou menos assim:

    public async Task DoSomething()
    {
    	Thred.Sleep(5000);
    }
    
    proteced override async void OnNavigateTo(object sender, EventArgs e)
    {
    	await DoSomething();
    }

    segunda-feira, 24 de fevereiro de 2014 20:37
  • https://gist.github.com/guilhermecarvalhocarneiro/9207435

    Obrigado.


    Guilherme Carvalho

    terça-feira, 25 de fevereiro de 2014 11:47
  • Funcionou colocando o retorno como Task?

    Se sim, poderia colocar a resposta como valida para fechar a thread e ajudar no forum.

    Obrigado!

    terça-feira, 25 de fevereiro de 2014 11:54
  • Não funcionou não.

    Guilherme Carvalho

    terça-feira, 25 de fevereiro de 2014 12:06
  • ok!

    Remova o a invocação da base e testa.

    Qualquer coisa estamos aí.

    terça-feira, 25 de fevereiro de 2014 12:24
  • Vc quer dizer o base.OnNavigatedTo(e) é?

    Guilherme Carvalho

    terça-feira, 25 de fevereiro de 2014 13:05
  • Isso mesmo.

    Conseguiu?

    terça-feira, 25 de fevereiro de 2014 13:07
  • Nada, mesmo retirando o base.

    Guilherme Carvalho

    terça-feira, 25 de fevereiro de 2014 14:28
  • Muito muito estranho, eu uso método async nesse evento e não nenhum problema.

    Qual seria o seu resultado esperado?

    terça-feira, 25 de fevereiro de 2014 14:39
  • Estou trabalhando com mapas, e queria pegar a localização atual do usuário e marcar no mapa esse resultado.

    Guilherme Carvalho

    quarta-feira, 26 de fevereiro de 2014 12:13
  • Será que o problema não está na hora de apontar no mapa?

    Você consegue debugar de boa o método?

    Porque tem esse método SetCurrentLocation que não está assincrono.
    quarta-feira, 26 de fevereiro de 2014 16:27
  • Vou testar hoje colocar SetCurrent como async também para ver se funciona.

    Guilherme Carvalho

    quarta-feira, 26 de fevereiro de 2014 17:50
  • Mesmo retirando o método e setando as configurações no mapa dentro do método StartGeoLocation nada de funcionar. Tentei inclusive utilizando um exemplo que encontrei no site da Nokia, mas mesmo assim não consigo marcar na mapa a localização atual do usuário.

    Guilherme Carvalho

    sexta-feira, 28 de fevereiro de 2014 18:09