我一直在网上查看并且一直在阅读您不能在 signalR 集线器类中使用 HttpContext.Current.Cache
,那么如果我希望能够让每个用户都可以使用什么解决方法有一些在我的集线器方法中访问的缓存数据。
编辑:
这些数据只需要在我的 hub 类中使用,我不需要在我的 asp.net 应用程序的其他地方访问它。不过,它肯定需要特定于用户。
最佳答案
如果您只是在寻找内置 ASP.NET 缓存的等效功能,那么您可以简单地启动 System.Runtime.Caching.MemoryCache
的静态实例。类(class)。然后只需在各种集线器方法中访问静态实例即可。
请记住,这是一个单一的服务器内存解决方案。对于更高级的进程外分布式缓存解决方案,我会考虑 AppFabric(Azure 或本地)或 Memcached。
关于c# - 解决 signalR 的 session 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11833336/