我有一些讀取和寫入cookie值的asp.net頁面。在頁面的生命週期中,它可能會更新cookie值,然後需要在代碼中再讀一遍。我發現,在頁面刷新之前,它不會獲取cookie的最新值。有沒有解決的辦法?以下是我用來設置和獲取值的代碼。cookie不會更新,直到頁面刷新...如何避免這種情況?
public static string GetValue(SessionKey sessionKey)
{
HttpCookie cookie = HttpContext.Current.Request.Cookies[cookiePrefix];
if (cookie == null)
return string.Empty;
return cookie[sessionKey.SessionKeyName] ?? string.Empty;
}
public static void SetValue(SessionKey sessionKey, string sessionValue)
{
HttpCookie cookie = HttpContext.Current.Request.Cookies[cookiePrefix];
if (cookie == null)
cookie = new HttpCookie(cookiePrefix);
cookie.Values[sessionKey.SessionKeyName] = sessionValue;
cookie.Expires = DateTime.Now.AddHours(1);
HttpContext.Current.Response.Cookies.Set(cookie);
}
這就是我們試圖解決的全部問題。我們正在擁有超過400個網站的網絡農場。每個站點的id在服務器到服務器之間並不相同,因此基於數據庫的會話不起作用,當然,在Web場中,inproc會話不起作用。所以我們不能使用會話。 – 2011-02-16 14:56:07