关于基类.cs 文件存session 的问题
我的环境是这样的:首先我要通过本地 Reg.aspx页ajax请求发送一个短信验证码。
Reg.aspx 页 ,ajax-->请求.ashx 里的方法,.ashx页的SendSms方法发送短信并存入session。
发送短信并且存入Session动作是在App_code 下的Sms.cs文件实现的。
这里就出问题了,
HttpContext context = HttpContext.Current; context.Session["smsCode"] = "345678";
总是报 未实例化对象,一直以为SMS.cs页的HttpContext未实例化对象,后来网上查到。
因为是ajax调用.ashx页的原因,需要.ashx页实现接口,支持Session才行。
所以,解决办法就是。
public class User : IHttpHandler, IRequiresSessionState
这样就问题解决了。
又有新问题,session取不到数据。
在page页也取不到数据,原来需要序列化了才能取到数据。
所以,这里需要变成。
[Serializable] public class User : IHttpHandler, IRequiresSessionState