1. 程式人生 > >清除session會話客戶端快取

清除session會話客戶端快取

        在一個linkButton的單擊事件中,我編寫了登出當前使用者的功能,如下所示:(框架中的一個子頁面有這個控制元件) protected void LinkButtonLogout_Click(object sender, EventArgs e)     {         this.Session.Clear();          this.Session.Abandon();           Response.Write(" <script language='javascript'>window.parent.location='../login.aspx'; </script>");  //

讓父框架轉到登陸頁面。     }     可是,之後我在當前的IE位址列裡輸入剛才訪問過的一個頁面,還是能顯示出資料,手動重新整理一次才轉回了登陸頁面。

原因:這個不是session的問題,應該是IE快取造成的現象。就是說你再次訪問頁面之後,並沒有訪問伺服器,而是訪問的本地快取頁面。 使Session.Clear()Session.Abandon()立即生效的解決方案: <META   http-equiv="Pragma"   content="no-cache">  取消客戶端快取。 如果頁面用 abc.aspx?id ="" 查詢字串的形式訪問瀏覽器,則會認定是不同的頁面(
abc.aspx頁面及id不同的形如abc.aspx?id =""的頁面都是不相同的),不會從本地客戶端快取讀取頁面,而是從伺服器讀取頁面。