弹出窗口Session丢失的解决办法?

来源:百度文库 编辑:神马文学网 时间:2024/05/23 23:25:02
  一:有些杀病毒软件会去扫描您的Web.Config文件,那时Session肯定掉,这是微软的说法。  
 
    二:程序内部里有让Session掉失的代码,及服务器内存不足产生的。
   
    三:程序有框架页面和跨域情况。  
 
    第一种解决办法是:使杀病毒软件屏蔽扫描Web.Config文件(程序运行时自己也不要去编辑它)        第二种是检查代码有无Session.Abandon()之类的。
   
    第三种是在Window服务中将ASP.NET   State   Service   启动。     第四种:使用window.showModalDialog进行信息的提示,相当方便,也容易控制外观和布局。但是存在一个严重的问题,就是Session丢失。当在A页面进行showModalDialog时,弹出的模态窗口open新页面或new dialog()时,会得不到A页面中的Session,这样就严重地限制了他的使用范围。     进一步的使用模式窗口可以发现session的丢失总是便随页面的刷新      1.在普通页面中弹出模式窗口且进行new dialog()操作时 会造成该进程中所有页面session的丢失     2.在模式窗口嵌套使用时 弹出的模式窗口并不会使父模式窗口的session丢失 但是会取不到父模式窗口的值     3.在弹出的模式窗口中使用js脚本需要验证表单时 如果出现return true or false之类的语句,会造成模态窗口session的丢失。     用showModalDialog经常出现这样那样奇怪的问题,因此最好少用showModalDialog。替代的方法就是用DIV来模拟实现模式窗口相同的功能。
本篇文章来源于 麦客学吧 原文链接:http://x8.maicoo.com/tech/net/17984.html