我正在使用c#和ASP.NET 3.5建立一个网站,我只是制作了一个HttpModule来处理NHibernate Session Life(打开和关闭)。 我把它添加到web.config,一切正常。 (所有的查询,代码等工作正常)除了我的母版页的CSS文件没有加载!!
这对我来说很奇怪, 你知道这种行为的原因是什么吗?谢谢大家,
答案 0 :(得分:0)
最后我找到了解决方案,问题源是在HttpModule事件中使用会话导致奇怪的问题。
看起来这是一个已知问题,会话状态是否可用实际上是由SessionStateModule本身决定的! 简而言之,为了强制会话状态加载当前的Context.Handler,通常是DefaultHttpHandler,必须在PostMapRequestHandler事件中由其他一些处理程序替换,实现IRequiresSessionState。为了安全起见,我的虚拟处理程序带有对原始处理程序的引用,并且一旦虚拟处理程序实现其目的,我就将其交换回PostAcquireRequestState事件。
实际上它是Asp.net和IIS中的已知问题,并且报告了解决方案Here at ASP.NET forum。还有一个示例代码来解决链接中的问题。 我测试了,我的问题解决了!
全部谢谢,