摘要: 問:為什么Session在有些機器上偶爾會丟失?
答:可能和機器的環境有關系,比如:防火墻或者殺毒軟件等,嘗試關閉防火墻。
問:為什么當調用Session.Abandon時并沒有激發Session_End方法?
答:首先Session_End方法只支持InProc(進程內的)類型的Session。其次要激發Session_End方法,必須存在Session(即系統中已經使用Session了),并且至少要完成一次請求(在這次請求中會調用該方法)。
問:為什么當我在InProc模式下使用Session會經常丟失?
答:該問題通常是由于應用程序被回收導致的,因為當使用進程內Session時,Session是保存在aspnet_wp進程中,當該進程被回收Session自然也就沒有了,確定該進程是否被回收可以通過查看系統的事件查看器獲得信息。
閱讀全文