Retornar valor da Thread para a view
17/07/2014
0
Bom dia pessoal, tenho um problema, preciso que uma Thread tenha o seu valor retornado para a view, eu estou utilizando o asp.net mvc 3 utilizando razor , o método que eu chamo a thread é passado por ajax.
Segue código
Segue código
ajax .ajax({ type: 'post', datatype: 'json', url: '@Url.Action("Logon", "Atendimento")', data: { ramal: '9081', id: '299', senha: '060492', maquinaCTI: '192.168.0.9', tipoIntervalo: '0' }, success: function (data) { } }); controller Thread t = new Thread(() =>re.WriteY(analista.conexao)); t.Start(); Thread.Sleep(1000); return Json(new {a = analista }); método WriteY public void WriteY(Socket s) { AtendimentoBussines atendeBussines = new AtendimentoBussines(); while (true) { atendeBussines.ReceiveCTI(s); } } método receiveCTI public void ReceiveCTI(Socket conexao) { bytesRec = conexao.Receive(bytesLength); receive = Encoding.UTF8.GetString(bytesLength, 0, bytesRec); msgByte = Encoding.UTF8.GetBytes(receive); AnalistaBean analista = new AnalistaBean(); switch (msgByte[2]) { case Pacotes.PACOTE_TRATA_LOGON: //return tratPacotes.tratamentoLogin(msgByte, receive); break; } } método que eu preciso retornar as informações para a view public AnalistaBean tratamentoLogin(byte[] buf, string resposta) { // A última posição significa qual vai ser o tratamento que o usuário vai ter de retorno. int respLogonCTI = buf[3]; AnalistaBean analista = new AnalistaBean(); switch (respLogonCTI) { case 2: // usuário logado analista.respostaLogado = true; return analista; break; } }
Aruã Magalhães
Curtir tópico
+ 0
Responder
Posts
18/07/2014
Joel Rodrigues
A função que está em success está sendo executada? Você já tentou tratar o retorno?
Responder
Clique aqui para fazer login e interagir na Comunidade :)