如果想要Session Timeout之後保存網頁最後一次操作的資料

摘要:如果想要Session Timeout之後保存網頁最後一次操作的資料

在專案上遇到這樣一個需求,

當Session Timeout時需要把使用者導回登入頁重新登入,

但是希望可以保存其最後一次操作的資料,等重新登入後可以再操作,

自己本身的想法是,希望可以不影響網頁上的程式碼來完成,

所以我把主意打到了Request物件上,

Request物件含有使用者要求的資料,包含了網頁回傳的Viewstate及Post的資料,

藉由這些資料,就可以把頁面還原到當時的資料狀態,

ASP.NET的網頁執行程序是使用者要求產生->選擇處理的HttpHandler->處理要求,這樣的順序進行的,

如果我可以在產生要求的時候,把Request物件換掉的話,可能可以達到要求,

不過,很可惜的是Request屬性是唯讀的,沒辦法換掉@@

另一個想法是換掉HttpHandler讓他使用保存下來的Handler來作業,

結果卻在程式執行的時候出錯,

錯誤內容是網頁中不能有兩個<head runat="server">之類的,

整天這樣試下來好灰心呀,感覺好像有點接近目標了,

卻又有一座高牆越不過~"~