c# – 解决signalR的会话问题

我一直在网上看,一直在读,你不能在signalR集线器类中使用HttpContext.Current.Cache,所以如果我想让每个用户都有一些在我的集线器中访问的缓存数据,那将是什么解决方法方法.

编辑:

这个数据只需要在我的hub类中使用,我不需要在我的asp.net应用程序的其他地方访问它.它肯定需要是用户特定的.

解决方法:

如果您只是在寻找内置ASP.NET缓存的等效功能,那么您可以简单地启动一个System.Runtime.Caching.MemoryCache类的静态实例.然后只需访问各种hub方法中的静态实例.

请记住,这是一个单一服务器,内存解决方案.对于更高级的,进程外的分布式缓存解决方案,我会关注AppFabric(Azure或本地)或Memcached.

上一篇:c# – 连接到VPN时,HttpClient.GetAsync超时


下一篇:跨外网络云服务器推送消息到每个客户端ASP.NET SignalR