ashx中应用HttpContext.Current.Session ,呈现未将对象引用设置到实例上
来源:互联网 发布:js uint8array用法 编辑:程序博客网 时间:2024/04/29 19:51
在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值获取正常。
解决办法:
1.引用using System.Web.SessionState;
2.在aspx类实现IReadOnlySessionState接口。如:public class {ClassName}: IHttpHandler, IReadOnlySessionState{…}
原因:
“IReadOnlySessionState”,指定目标HTTP处理惩罚法度只须要具有对话接见状况值的读接见权限。
实际上是ashx文件起首是实现了IHttpHandler接口。但要接见page中的session状况值时,是两个应用范畴。
微软默认状况下没有接见权限,所以ashx文件接见不了HttpContext.Current.Session,故呈现未将对象设置到实例上。
只须要在实现IReadOnlySessionState接口即可。
概括:1.using System.Web.SessionState;
2.public class {ClassName}: IHttpHandler, IReadOnlySessionState
“IReadOnlySessionState”,指定目标HTTP处理程序只需要具有对话访问状态值的读访问权限。
- ashx中应用HttpContext.Current.Session ,呈现未将对象引用设置到实例上
- ashx中应用HttpContext.Current.Session ,呈现未将对象引用设置到实例上
- ashx中使用HttpContext.Current.Session ,出现未将对象引用设置到实例
- ashx页面中 Session值出现“未将对象引用设置到对象的实例”错误
- ashx页面中 Session值出现“未将对象引用设置到对象的实例”错误
- ashx页面中 Session值出现“未将对象引用设置到对象的实例”错误
- HttpContext.Current.Cache 提示:未将对象引用设置到对象的实例
- HttpContext.Current.Server.MapPath("") 未将对象设置到引用的实例异常。
- ashx文件中使用session提示“未将对象引用设置到对象的实例”的解决方法
- 如何在ashx页面获取Session值(未将对象引用设置到对象的实例)
- ashx和session解决未将对象引用设置到对象的实例问题
- ASP.NET在.ashx文件中使用session出异常,未将对象引用到对象的实例。
- session未将对象引用设置到对象的实例
- session未将对象引用设置到对象的实例
- HttpContext.Curent.Session未将对象应用到对象的实例
- 写入Session时出现未将对象引用设置到实例上
- Session 未将对象引用到实例
- 解决报错:Session为空(未将对象引用设置到对象的实例)
- Oracle恢复数据 Tips
- 网易游戏笔试回顾
- LeetCode-Permutation
- 关于Myeclipse中svn插件的安装及配置
- Android BroadcastReceiver详解
- ashx中应用HttpContext.Current.Session ,呈现未将对象引用设置到实例上
- 实验室第二周实验报告-戴宏达
- C与C++中string的区别与联系
- cdp 是自己 时亮时不亮
- Windows查看端口占用情况方法
- vector subscript out of range问题解决方案之一
- 并行 并发
- Xcode6模拟器iOS8键盘出不来问题
- cocos2dx 在android平台打开文件问题