我有两个处理程序。
在Authentication.ashx处理程序中,我将对象保存在以下会话中:
HttpContext.Current.Session["ConnectionUserSession"] = userCache;
然后,我有另一个Handler,Send.ashx,我希望将对象保存在Authentication.ashx中。
我是怎么做到的? 获取对象的代码是:
UserCache userCache = (UserCache) HttpContext.Current.Session["ConnectionUserSession"];
问题: userCache总是为null,我在两个处理程序上都实现了IRequiresSessionState。
答案 0 :(得分:0)
我认为他们的意思是在Authentication.ashx:
public void ProcessRequest (HttpContext context) {
context.Session["ConnectionUserSession"] = userCache;
}
在Send.ashx中,
public void ProcessRequest (HttpContext context) {
UserCache userCache = (UserCache) context.Session["ConnectionUserSession"];
}
答案 1 :(得分:0)
行
HttpContext.Current.Session["ConnectionUserSession"] = userCache;
未执行,或者用于保存和检索的字符串键不同,或者您已调用
Session.Abandon();
这两个处理程序之间。