這個問題似乎已經奇怪地消失了。我的環境一定是有些古怪的東西。我正在投票結束這個問題。
當用戶登錄時,我用來自Login頁面代碼隱藏的一堆數據給會話充氣。然後我將用戶重定向到應用程序中的其他頁面。我還有一些會話恢復邏輯,當用戶的會話過期時,會根據身份驗證票據重新加載會話。
似乎在發生的事情是,我用來自登錄頁面的一堆數據膨脹用戶的會話,然後重定向它們,並且我重定向到的頁面請求似乎沒有會話,所以應用程序必須重新充氣。我不明白這一點 - 我查看了Cookie,會話ID沒有改變,我也沒有在代碼中的任何地方重置會話數據。這是一個ASP .NET'feauture'嗎?我正在使用ASP .NET 4.0。
編輯:
澄清:登錄請求(在點擊甚至登錄按鈕)時的會話被充氣。在下一次請求期間,不會顯示該會話已經被填充,所以我最終不得不重新膨脹會話。在此之後用戶提出的任何請求,會話似乎都會「粘住」,並且我爲隨後的請求提供適當膨脹的會話。
在頁面循環中,您是否在登錄時填充會話 - 在按鈕中單擊?你的所有網頁是否位於同一個域名下?你是否啓用了會話? – Paddy 2011-06-09 13:03:18
我相信我已經在剛剛提出的問題的版本中解決了您的問題。 – 2011-06-09 14:17:09