摘要:如果想要Session Timeout之後保存網頁最後一次操作的資料
在專案上遇到這樣一個需求,
當Session Timeout時需要把使用者導回登入頁重新登入,
但是希望可以保存其最後一次操作的資料,等重新登入後可以再操作,
自己本身的想法是,希望可以不影響網頁上的程式碼來完成,
所以我把主意打到了Request物件上,
Request物件含有使用者要求的資料,包含了網頁回傳的Viewstate及Post的資料,
藉由這些資料,就可以把頁面還原到當時的資料狀態,
ASP.NET的網頁執行程序是使用者要求產生->選擇處理的HttpHandler->處理要求,這樣的順序進行的,
如果我可以在產生要求的時候,把Request物件換掉的話,可能可以達到要求,
不過,很可惜的是Request屬性是唯讀的,沒辦法換掉@@
另一個想法是換掉HttpHandler讓他使用保存下來的Handler來作業,
結果卻在程式執行的時候出錯,
錯誤內容是網頁中不能有兩個<head runat="server">之類的,
整天這樣試下來好灰心呀,感覺好像有點接近目標了,
卻又有一座高牆越不過~"~