为什么在ASP .Net MVC应用程序中使用SignalR 2.x库的HTTPContext
我正在尝试使用Signal R1.x tgo SignalR 2.x迁移我们的ASP.Net MVC应用程序.我刚刚发现问题,这肯定会导致我们在向前迈进中遇到问题.
我们的Web应用程序是基于MVC的,并且大量使用HttpContext.Current.Session变量. 当我们升级到SignalR 2.x时,Session突然变为空. 我做了一点谷歌搜索,发现以下关于这个问题的链接: 进一步调查显示以下信息: HTTPContext.Current.Session is null This behavior is by design. SignalR does not support the ASP.NET session state,since enabling the session state would break duplex messaging. 我想这将打破许多基于ASP .Net MVC的应用程序. 这是真正的设计,还是使用oWin ::> Startup :: Configuration(){app.MapSignalR();}来启动2.x中的signalR? 如果可能的话,我想解决这个问题,如果解决方案不那么痛苦,他们仍会考虑转向2.x. 思考? 解决方法
SignalR不支持会话状态,因为它会干扰来自同一用户的同时请求的处理,并且不受WebSockets请求的支持.在2.0中,属性为null,因为在初始化会话状态模块之前处理SignalR请求.这是一个从1.0改变SignalR如何在基于System.Web的ASP.NET应用程序中托管的内容(在1.0中它使用了ASP.NET路由表中的路由,在2.0中它使用了Microsoft.Owin提供的OWIN主机模块. Host.SystemWeb).
请注意,这仅影响SignalR类(集线器等)中的会话使用,而不影响应用程序的其余部分. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 在ASP.NET mvc 4中使用Ninject时是否需要控制器工
- asp-classic – 如何将字符串转换为日期时间格式
- asp.net – Visual Studio 2012不发布项目
- ASP.NET MVC:访问日志
- asp.net – 启用了slidingExpiration的FormsAuth
- asp.net-mvc-3 – DropDownListFor中的ViewBag属
- asp.net-mvc – 如何将httppostedfilebase转换为
- asp.net-mvc – MVC ajax json post到控制器动作
- asp.net – 使用Cookie进行Web会话状态 – 有哪些
- asp.net-mvc-3 – MVC 3 json请求应该在异常时接