在做一个ajax应用的时候,建立了一个ashx页面,让前端的js来刷该页面。在方法public void ProcessRequest(HttpContext context)中,记录信息的时候,用到了 context.Session.SessionID和 context.Session["UserPtid"]。再测试查看后台数据记录的时候,这两个字段竟然都保存为空,这是为什么呢 ?
其实,只要让你的ashx页面类继承System.Web.SessionState.IReadOnlySessionState 接口即可。该接口是个标记接口,没有任何方法,它只是让目标http处理程序只需对会话状态的值具有读访问权限。详细用法,请参阅msdn。
keyword:ashx,Session,IReadOnlySessionState
本文探讨了在AJAX应用中使用ASHX页面时遇到的问题:Session信息未能正确记录。解决办法是让ASHX页面继承IReadOnlySessionState接口,以确保能够正确读取Session状态。
892

被折叠的 条评论
为什么被折叠?



