2009-01-28 78 views
1

我想設置.Net Web應用程序中特定會話變量的超時值,但保留其他Session變量不變。這可能嗎?我可以爲指定的Session變量設置會話超時而不是其他會話變量

實施例:

我已經5個會話變量

會議(VAR1) 會議(VAR2) 會議(VAR3) 會議(VAR4) 會議(VAR5)

欲設置它以便會話(var1)到會話(var4)的超時時間爲8小時(480分鐘),但Session(var5)的超時時間爲20分鐘。可以做到嗎?

回答

1

您可以通過在此變量(或關聯的時間戳字段)中創建時間戳字段來實現此功能。時間戳記將標記變量變爲無效的時間。當然,你將不得不在你的代碼中手動處理時間戳(每次點擊更新它,並在它失效時從會話中刪除它)。

+0

我該怎麼辦?你能詳細說明一些代碼示例嗎? – Eppz 2009-02-04 20:51:22

1

您需要使用Session的替代方法進行存儲。 asp.net的緩存框架可能是最接近的選擇。請參閱Adding Items to the Cache

1

您可以提供您自己的HttpSessionStateBase實現,您的版本可以知道它們在會話刷新時可以存儲和更改的不同內容。