Asp.net 网站重新启动时自动恢复/重新连接信号器连接

Asp.net 网站重新启动时自动恢复/重新连接信号器连接,asp.net,signalr,Asp.net,Signalr,我有一个用ASP.net编写的网站,它使用Signal 每当我发布对web服务器的更改时,任何打开的信号器连接都会在没有警告的情况下断开,因此用户觉得它只是冻结了。当然,如果他们刷新页面,连接就会恢复,并且可以继续 有没有一种方法可以优雅地重新打开那些丢失的连接,而不需要用户以任何方式进行操作?如果您的网站/appdomain在30秒内重新启动(Signal的默认断开超时),Signal应该尝试自动无缝地重新建立连接 当SignalR客户端注意到服务器已关闭并开始尝试重新连接时,它将触发重新连接

我有一个用ASP.net编写的网站,它使用Signal

每当我发布对web服务器的更改时,任何打开的信号器连接都会在没有警告的情况下断开,因此用户觉得它只是冻结了。当然,如果他们刷新页面,连接就会恢复,并且可以继续


有没有一种方法可以优雅地重新打开那些丢失的连接,而不需要用户以任何方式进行操作?

如果您的网站/appdomain在30秒内重新启动(Signal的默认断开超时),Signal应该尝试自动无缝地重新建立连接

当SignalR客户端注意到服务器已关闭并开始尝试重新连接时,它将触发重新连接事件。如果在断开超时之前成功重新连接,它将触发重新连接事件

在服务器上,将在客户端成功重新连接到的集线器或PersistentConnection上自动调用OnReconnected事件。此事件将在更新的web应用程序中调用

如果发现客户端正在断开连接,这可能意味着它们在断开连接超时过期之前无法重新连接。您可以展开DisconnectTimeout,也可以尝试在客户端断开连接后手动启动新连接。如果手动启动新连接,则会在服务器上调用OnConnected而不是OnReconnected,并且会为客户端提供新的ConnectionId


有关Signal的重新连接逻辑以及如何在Signal客户端上手动重新启动连接的更多详细信息,请参见。

@-1您好,是的,我知道这是一个奇怪的问题,问我承认的问题会有风险。但是我认为这是值得的。嗨,如果我在代码后面或/和web配置中更改了一些内容并保存,那么我的信号器连接就不再工作了。如果我刷新页面,然后确定。我的客户端中有用于断开连接的重新连接代码event@user2864740是的,我知道这是正常情况。我只是想跳出框框思考,不管我的问题看起来有多奇怪others@user2864740但是,我想任何交互式网站都会有同样的问题,比如从计时器调用web api?有两个关闭器,这是我所期望的,不要责怪任何人:)