由於各種原因,建立SignalR連接時,我將該ConnectionId存儲在我的數據存儲中。但是,如果SignalR重新啓動,那些連接記錄可能會成爲孤立的。 (我也觀察到行爲,讓我懷疑OnDisconnected()是否正確調用,雖然我不太確定這一點。)鑑於SignalR ConnectionId,我可以告訴該會話是否仍然連接?
但是,無論出於何種原因,我會定期結束記錄在我的數據庫中孤兒,我希望能夠修剪這些,並刪除任何實際連接不上的ConnectionID - 大概是通過讓SignalR告訴我這個ConnectionID是否仍然與實時會話相關聯。
我已經看過了SignalR的源代碼,它並沒有向我跳出如何最好地實現這一點。有沒有合理的方法來做到這一點?
這基本上是我現在正在做的,但它似乎沒有正常工作。也許98%的時間,但每隔一段時間,我會關閉我的開發機器上的所有瀏覽器,然後當我回到我的房間時,它會相信我的版本中仍然有某些東西'_connectedClients',即使一切都應該已被清除。儘管如此,我沒有這方面的報道,所以對你們來說幫助不大。我會告訴你,如果我能弄清楚是什麼觸發它 - 或者如果(也許更可能)它是我身邊的錯誤。 –
@N。 Taylor Mullen爲什麼你最後一次void返回bool值? –
@aliyouhannaei沒有理由,只是一個失敗的代碼片段。只是更新了它。 –