标签:
一般我们通过ajax来处理用户信息的时候,遇到了Session值是找不到的这是为什么?
我们所谓的页面就是一个处理程序,其实现非常复杂,要通过asp.net的管道处理,一般处理程序也要通过管道事件来过滤最终生成HTML提交浏览器,但是一般处理程序.ashx页只是继承了IHttpHandler接口,无法传递Session,那么要截取HttpContext context 的Session对象值怎么办?
public class CustomerPhoto : IHttpHandler
解决方案:
首先ashx页不像aspx页直接继承了page 实现了接口我们可以直接拿到Session,而ashx页只是继承了IHttpHandler接要截取HttpContext context 的Session对象必须实现IRequiresSessionState,导入程序集合using System.Web.SessionState; 同时使用context.Session对象。这样才获取了Session值。
public class CustomerPhoto : IHttpHandler, System.Web.SessionState.IRequiresSessionState
public void ProcessRequest(HttpContext context)在传进的 context中截取session的值
public void SavePic()
{
HttpContext ctx = HttpContext.Current;
}
ctx就是(HttpContext的 报文 与报文中所有值得的数据,也就是客户端所传进的数据进行处理。
标签:
原文地址:http://www.cnblogs.com/luwei19911206/p/4620837.html