.NET 一般处理程序中获取到的session值为空
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.NET 一般处理程序中获取到的session值为空相关的知识,希望对你有一定的参考价值。
在网上查了资料 也继承了IRequiresSessionState 接口,但是获取的值还是为空,后台一切正常,求高手指点
参考技术A .net的一般处理程序 .ashx的context对象默认是取不出session的值出来的。要达到取出Session的效果,则需要让它实现System.Web.SessionState.IReadOnlySessionState接口(该接口没有任何方法实现,只是起到一个标识作用)
为了让所有的一般处理程序都能获取到Session值,并且能集中做一些控制管理(比如用户认证、权限控制等),我的策略是让一个抽象类实现IHttpHandler, IRequiresSessionState接口,然后让其他所有一般处理程序都继承该抽象类即可。 参考技术B 是不是用flash上传文件的后台处理类?flash和后台交互的时候会重新分配ASP.NET_SessionId.导致页面会话和flash会话ID不同。所以会被认为是两个不同的浏览器请求,自然session不同,即无法取到值。追问
嗯 是flash文件上传类,请问有没有其他解决方法呢?
追答 有两种方式:
1 、不做flash上传的时候的访问限制。
2 、在服务端Session判空并创建之前,将传递过来的SessonID强制赋给当前请求的Cookies,这样服务端就认为还是原来的Session传递过来了。
你可以参考一下这个链接:
http://www.cnblogs.com/fumj/archive/2012/11/30/2795990.html
一般处理 程序中获取Session中的值?
如果没有引入using System.Web.SessionState;空间
和IRequiresSessionState(或者IReadOnlySessionState)接口,
那么会出现session对象未将实例化的错误。
以上是关于.NET 一般处理程序中获取到的session值为空的主要内容,如果未能解决你的问题,请参考以下文章
一般处理程序设置Session cs 文件获取session
easyui中动态datagrid列名,根据不同的条件查询数据库显示不同的列。一般处理程序中用session来弄columns