Возможно, вы не должны увеличивать время ожидания. Посмотрите на это question, так как это объясняет поведение, которое вы можете наблюдать. Соответствующие действия состоят в том, чтобы проверить указанную проблему на стороне клиента и обработать ее соответствующим образом, не увеличивая время ожидания.
Но, как вы это просили, вот как вы можете это сделать. Добавьте это в класс запуска.
// Make long polling connections wait a maximum of 110 seconds for a
// response. When that time expires, trigger a timeout command and
// make the client reconnect.
GlobalHost.Configuration.ConnectionTimeout = TimeSpan.FromSeconds(110);
// Wait a maximum of 30 seconds after a transport connection is lost
// before raising the Disconnected event to terminate the SignalR connection.
GlobalHost.Configuration.DisconnectTimeout = TimeSpan.FromSeconds(30);
// For transports other than long polling, send a keepalive packet every
// 10 seconds.
// This value must be no more than 1/3 of the DisconnectTimeout value.
GlobalHost.Configuration.KeepAlive = TimeSpan.FromSeconds(10);
Необходимо увеличить DisconnectTimeout
. И есть небольшая вещь, о которой нужно помнить: важен параметр настройки KeepAlive
и DisconnectTimeout
. Если вы установили DisconnectTimeout
после того, как вы установили KeepAlive
, он переопределит значение KeepAlive
.
Вы не увеличиваете этот тайм-аут. Я бы поискал причину, почему у вас этот таймаут. – Tester