日期:2014-05-18  浏览次数:20501 次

关于HttpModule和HttpHandler冲突的问题,在线等,解决立即给分。
我用HttpModule实现BS程序权限的控制,另外我用AjaxPro方案实现了Ajax,在Webconfig里,如果我把HttpModuler的注册加上,我的AjaxPro的HttpHandler就不能正常运转了。

这是AjaxPro里的httpHandlers注册
            <httpHandlers>
            <add   verb= "POST,GET "   path= "ajaxpro/*.ashx "   type= "AjaxPro.AjaxHandlerFactory,   AjaxPro "/>
            </httpHandlers>  

这是我的HttpModule
            <httpModules>
            <add   name= "PaintBusiness.Presentation "   type= "PaintBusiness.Presentation.AppModule,PaintBusiness "   />
            </httpModules>    

如果在Webconfig中都加上,httpHandler就会出错,Ajax就不能正常运行,去掉HttpModule在WebConfig中的注册,httpHandler就正常了。

请教各位达人,如果使他们共存,多谢,在线等,解决立马给分。

------解决方案--------------------
正常来说应该不会有什么干扰吧

报什么错?
列出HttpModule一些关键代码
------解决方案--------------------
先判断Application.Context.Session是否存在呢?
if (HttpContext.Current.Session != null)
{
if (Application.Context.Session[ "User "]!=null)
{
...
}
}

记得session好象在应用程序的生命周期的哪个阶段起才会起作用,不知是不是这个原因,可以测试一下。
------解决方案--------------------
http://hi.baidu.com/gnhao/blog/item/998ed245146ba53e86947316.html
去看看