首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在使用SignalR时,HTTPContext.Current.Session在SignalR...need替换为会话状态时为nul

在使用SignalR时,HTTPContext.Current.Session在SignalR...need替换为会话状态时为nul
EN

Stack Overflow用户
提问于 2014-01-02 19:08:36
回答 1查看 1.7K关注 0票数 1

最近,我从使用ChatJS和SignalR2.0的http://www.chatjs.net/站点下载了示例ChatJs MVC应用程序并将其集成到我的应用程序中。我正在尝试在ChatHub.cs类(继承自SignalR集线器类)中使用我的应用程序会话值(userid)。在这个类中,当我试图访问我的应用程序的会话UserId时,我得到了一个错误"Object reference not set to an object instance“,它返回null。我能够在HomeController.cs (控制器类)中访问相同的UserId会话值。

我在下面的链接中看到了我的问题(还在链接后面粘贴了文本),看起来像SignalR

不支持ASP.NET会话状态。http://www.asp.net/signalr/overview/signalr-20/troubleshooting-and-debugging/troubleshooting

HTTPContext.Current.Session是null.This设计的行为。SignalR不支持ASP.NET会话状态,因为启用会话状态会中断双工消息传递。

到目前为止,在我的应用程序中,我们能够使用会话值,没有任何问题。我被困在这里,因为我需要做这么多的db调用,并且我需要传递用户会话ID和其他会话值。通常我们依赖会话来提供特定于用户的信息。

是否有任何替代会话或任何其他方式来获得用户特定的信息,如UserId等。需要您的帮助在这里最早。

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2014-01-02 23:40:40

特定于用户的信息(如用户ID )可能应该存储在管理用户身份验证的同一上下文中,而不是存储在会话状态中。这也将解决你在会话状态方面可能遇到的其他问题(即伸缩)。

如果使用的是ASP.NET窗体身份验证,则可以使用成员资格和配置文件来存储有关用户的信息。你可以阅读所有关于会员资格和个人资料的here

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20881591

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档