2010-04-01 22 views
0

我有時會發現需要按CTRL + REFRESH BUTTON(或簡單刷新按鈕)才能更新頁面。 我認爲這可能是使用AJAX更新面板和事物的問題,但它也發生在沒有AJAX局部呈現的頁面上。 我也刪除如果(!isPostBack),但仍然需要刷新頁面的內容進行更新。頁面不會在ASP.NET中取消緩存本身C#

它與緩存有關嗎?

有沒有人知道這個問題的解決方法? 我相信它只發生在IE 7(我正在使用)。我嘗試了與Chrome相同的功能,並且按照預期運行。

編輯:不幸的是,它不像設置緩存標題爲0或在IE瀏覽器總是在頁面加載時最新的頁面一樣簡單。我已經完成了這些,發生了同樣的問題。

例如,在我的網站的一部分,您可以更改個人資料圖片。如果我選擇刪除配置文件圖片(應將其設置爲默認圖片),它只會刪除圖片(但不會顯示默認圖片)。該頁面再次加載,但它仍然參考我刪除的圖片(所以我得到一個X的圖片)。我必須進入不同的頁面,然後回到配置文件頁面以查看默認圖片。 CTRL + REFRESH也可以。

請注意,這個特定問題發生在所有瀏覽器(包括Chrome)下。

如果有幫助,我正在使用母版頁中的內容頁面。

回答

0

Ctrl + refresh強制您IE瀏覽器從服務器重新加載頁面,而不是使用本地緩存版本。首先,檢查您的瀏覽器設置:設置 - 常規 - 瀏覽歷史記錄。 「檢查更新版本的存儲頁面」應設置爲「自動」。然後,檢查是否將任何「過期」標題添加到您的頁面。

1

更改您的瀏覽器緩存設置將在本地解決問題,但爲了解決它的一般情況,將標題「Expires:0」添加到您的出站頁面,這將阻止瀏覽器緩存它。

要做到這在C#中,此代碼添加到頁面加載事件:

Response.AddHeader("Expires", "0"); 
+0

試過,但不起作用。看到更新的問題 – waqasahmed 2010-04-01 23:34:05