0

我想处理集线器调用的超时回调以保证服务器收到我的“消息”,我该怎么做?

我查看了signalR wiki,用谷歌搜索但一无所获!

这就是我认为界面的方式:

  var hubcon = new HubConnection("myurl", useDefaultUrl: false);
   IHubProxy chatHub = hubcon.CreateHubProxy("chatHub");
   chatHub.On("timeout", data =>
                {
                    //do something
                });

   hubcon.Start().Wait(1000);

   chatHub.Invoke("EnviarMensagem", new { nome = nome, mensagem = mensagem }).Wait();

   hubcon.Stop();
4

1 回答 1

1

由于您仍然在调用Wait,您可以设置超时并查看返回值以查看服务器是否完成了对您的调用的处理:

   if (!chatHub.Invoke("EnviarMensagem", ...).Wait(10000))
   {
       // The server did not respond to the invocation within 10 seconds
   }

http://msdn.microsoft.com/en-us/library/dd270644.aspx

于 2013-02-15T22:09:03.767 回答