У нас есть концентратор, который управляет клиентами, такими как чат.
В некоторых случаях мы замечали, что существуют «мертвые» соединения, для которых не вызывалось событие отключения.
В ASP .NET Framework 4.5.2 SignalRМы использовали ITransportHeartbeat
для проверки текущего состояния соединения:
// SignalR connection state check - .NET framework 4.5.2
var heartBeat = GlobalHost.DependencyResolver.Resolve<ITransportHeartbeat>();
var connectionId = appConnection;
var connection = heartBeat.GetConnections().FirstOrDefault(
c => c.ConnectionId == connectionId);
if (!connection.IsAlive)
{
//...
}
Я больше не вижу ITransportHeartbeat
в SignalR .NET Core.Есть ли способ узнать текущее конкретное состояние соединения?