SignalR - 跨Web应用程序的多个页面保留相同的连接

时间:2012-11-14 16:48:09

标签: asp.net-mvc signalr

我想提供一种用户体验,在我的ASP.NET MVC应用程序中,可以跨多个页面使用SignalR连接。

如果我在_Layout.cshtml中包含SignalR启动代码(JS),每次用户导航到不同页面时,服务器是否会将其视为“新鲜”客户端连接?或者SignalR会支持这种开箱即用的行为吗?

1 个答案:

答案 0 :(得分:5)

每个页面都表示为“客户端”,因此每页都有一个唯一的连接(没办法)。此问题的替代方案是:

  1. 动态加载页面并在当前页面上显示它们。基本上只有一个物理页面。
  2. 将用户状态保存在Cookie或会话中,当您开始新连接时,请将其填入已保存的状态。用这种方法警惕安全问题。
  3. 希望这有帮助!