使用Session.Abandon()注意

部分引用自: http://www.cnblogs.com/jintan/archive/2007/05/10/741175.html

 

最近在修改一個項目的時候碰到一個問題,在登錄時使用
Session.Abandon();
Session.Clean();
Session["user"] = "admin";
然後用Page.Redirect("xxx.aspx")後
新頁面xxx.aspx中Session["user"] 還是爲空,一直找不到問題的所在,後來把Session.Abandon();去掉後就可以了,爲什麼這樣呢?

 

Abandon 方法被調用時,將按序刪除當前的 Session 對象,不過在當前頁中所有腳本命令都處理完後,對象纔會被真正刪除。這就是說,在調用 Abandon 時,可以在當前頁上訪問存儲在 Session 對象中的變量,但在隨後的 Web 頁上不行。

 

使用Session.Clear()沒有這個問題

 

如果要用Session.Abandon(),最好放在一個獨立的頁面。

發佈了33 篇原創文章 · 獲贊 4 · 訪問量 29萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章