在aspx和aspx.cs中,都是以Session[“xxx”]=”aaa”和aaa=Session[“xxx”].ToString()进行读写。
而在ashx中,Session都要使用context.Session,读写方法不变。
在ashx文件中,若要对Session进行成功的读写,应该在使用Session的class后
增加接口IRequiresSessionState,否则context.Session[“xxx”]读出的总是null
例如:
[Serializable]
public class pubSession: IRequiresSessionState
{
public int logined = 0;
}
HttpContext _ConText = HttpContext.Current;
pubSession myPubSession = (pubSession)_ConText.Session[“pubSession”];// 没有继承 IRequiresSessionState 时获取是null
((pubSession)Session[“pubSession”]).logined