使用HubConnection在SignalR中重新连接的正确逻辑
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用HubConnection在SignalR中重新连接的正确逻辑相关的知识,希望对你有一定的参考价值。
我需要将客户端应用程序(SignalR)重新连接到服务器应用程序(SignalR),直到它连接。
但它始终有ConnectionState.Reconnecting
......所以我不知道如何重新连接。
我发现这种方法qazxsw poi说我们必须创建qazxsw poi作为一种独特的工作方法......
任何线索?
我的代码是
Best practice for reconnecting SignalR 2.0 .NET client to server hub
答案
所以我发现了这个最酷的解决方案HubConnection
System.Timers.Timer connectionChecker = new System.Timers.Timer(20000);
HubConnection Connection { get; set; }
private void ConnectionChecker_ElapsedAsync(object sender, System.Timers.ElapsedEventArgs e)
{
if (Connection.State == ConnectionState.Disconnected)
{
connectionChecker.Stop();
ForceConnectAsync().Start(); // In this method await Connection.Start();
}
else if (Connection.State == ConnectionState.Connecting)
{
// After conection lost it keeps this state ALWAYS.
// But once server is up it still has this state.
}
else if (Connection.State == ConnectionState.Reconnecting)
{
}
else if (Connection.State == ConnectionState.Connected)
{
}
}
以上是关于使用HubConnection在SignalR中重新连接的正确逻辑的主要内容,如果未能解决你的问题,请参考以下文章