System.Web.HttpContext.Current.Session NullReference错误
2014-03-12 18:48
483 查看
记得以前遇到过这个错误的,今天又遇到了,以前没记录一下,今天记录一下,以下是转载部分:
在自定义类库CS文件里使用System.Web.HttpContext.Current.Session获取Session时提示错误:未将对象引用设置到对象的实例。一般情况下通过这种方式获取Session值不会有问题,不过应特别注意要使用session必须要page_load方法执行以建立了page对象以后才有session的使用目标,此时先检测Session是否为Null再调用值是不会提示错误的。如果直接在Page页面中定义一个全局变量取Session的值就会提示未设置实例的错误!使用Application,Cookie同理也需注意这个问题。在ASHX一般处理程序文件中如需调用Session必须继承System.Web.SessionState.IRequiresSessionState接口,才能实现Session读写!System.Web.SessionState的接口介绍:IReadOnlySessionState 指定目标 HTTP 处理程序只需要具有对会话状态值的读访问权限。这是一个标记接口,没有任何方法。
IRequiresSessionState 指定目标 HTTP 处理程序需要对会话状态值具有读写访问权。这是一个标记接口,没有任何方法。
自定义 HTTP 处理程序,从IHttpHandler继承,在写System.Web.HttpContext.Current.Session["Name"]的时候没有问题,但想将这个Session写到某个变量时,发现Session的值为NULL;MSDN中的解决方法为:“在自定义 HTTP 处理程序中实现 IRequiresSessionState 接口,以确定处理程序是否需要对会话状态值具有读写访问权”,在自定义的类上加上该接口后,Session值获取正常。 转自:http://www.cnblogs.com/xyd21c/archive/2010/12/11/1903491.html
在自定义类库CS文件里使用System.Web.HttpContext.Current.Session获取Session时提示错误:未将对象引用设置到对象的实例。一般情况下通过这种方式获取Session值不会有问题,不过应特别注意要使用session必须要page_load方法执行以建立了page对象以后才有session的使用目标,此时先检测Session是否为Null再调用值是不会提示错误的。如果直接在Page页面中定义一个全局变量取Session的值就会提示未设置实例的错误!使用Application,Cookie同理也需注意这个问题。在ASHX一般处理程序文件中如需调用Session必须继承System.Web.SessionState.IRequiresSessionState接口,才能实现Session读写!System.Web.SessionState的接口介绍:IReadOnlySessionState 指定目标 HTTP 处理程序只需要具有对会话状态值的读访问权限。这是一个标记接口,没有任何方法。
IRequiresSessionState 指定目标 HTTP 处理程序需要对会话状态值具有读写访问权。这是一个标记接口,没有任何方法。
自定义 HTTP 处理程序,从IHttpHandler继承,在写System.Web.HttpContext.Current.Session["Name"]的时候没有问题,但想将这个Session写到某个变量时,发现Session的值为NULL;MSDN中的解决方法为:“在自定义 HTTP 处理程序中实现 IRequiresSessionState 接口,以确定处理程序是否需要对会话状态值具有读写访问权”,在自定义的类上加上该接口后,Session值获取正常。 转自:http://www.cnblogs.com/xyd21c/archive/2010/12/11/1903491.html
相关文章推荐
- 如何使用unix网络编程第三版的源码
- 《Unix网络编程卷1-套接字联网API》第一个例子编译 不通过问题解决
- MATLAB BP神经网络算法
- MATLAB BP神经网络算法
- [C# 网络编程系列]专题八:P2P编程
- linux网络管理命令
- 判断网络状态及当前是什么网络
- Android-网络通信框架Volley使用详解
- [C# 网络编程系列]专题六:UDP编程
- 百度杯全国网络攻防大赛——初来乍到
- wcf将一个服务同时绑定到http和tcp的写法
- 基于mjpg-streamer网络视频服务器移植
- fix http://java.sun.com/jsp/jstl/core cannot be resolved
- 神经网络算法--BP网络--人脸朝向
- 基本的安全和HTTP认证
- Android的三种网络通信方式
- HttpClient简介与案例分析
- SQL2005学习(九),将数据库备份到网络共享文件夹中
- C#在IIS上如何访问网络上的共享盘
- jrtplib跨网络通讯NAT穿透问题解决方法