代码改变世界

只有在配置文件或 Page 指令中将 enableSessionState”的异常解决办法

2009-11-06 16:20  cnb_mtime  阅读(352)  评论(0编辑  收藏  举报

“只有在配置文件或 Page 指令中将 enableSessionState 设置为 true 时,才能使用会….”这个错误是访问Session时出现的,一般是不会出现的,因为默认是加载了.

web.config中.

<add name="Session" type="System.Web.SessionState.SessionStateModule"/>

 

这里有两个可能 一个是 使用了

 

<httpModules>
      <clear />

 

就是这个<clear />清除了默认加载的系统组件.所以你要使用httpModules的clear的同时注意要加上上面的

<add name="Session" type="System.Web.SessionState.SessionStateModule"/>

 

显式加载进来.

 

第二种的可能就是使用了

<httpHandlers>
        <add verb="*" path="*" type="******,*****"/>
      </httpHandlers>

这种情况出现的更新是会让人摸不着头脑,我也是突然想起 httpHandlers 比 httpModules优先.

是不是使用了 httpHandlers 之后就不会自动加载这些默认的组件了呢?

 

对了,就是这样的,那么怎么解决?

 

这个就更简单了.实现接口.IRequiresSessionState

 

public class Hander : IHttpHandler,IRequiresSessionState

就是这里实现一下就可以了.

 

呵呵.