2013-06-26 90 views
0

我有一個asp.net MVC應用程序中,我使用的是session屬性超時:更改會話變量在C#

Session["id"] = id; 

我的問題是屬性的超時時間,我想是無限的,直到它變成另一個值。現在,當定時器到期(30秒)Session["id"]需要null作爲值。

這樣做的最佳方法是什麼?

+1

我一直的印象是,會話超時可以設置下,但不是專門屬性 – Jonesopolis

回答

3

默認會話超時設置爲20分鐘。據this MSDN article

HttpSessionState.Timeout屬性獲取和設置的時間量,在 分鐘,請求之間所允許的會話狀態提供 之前終止會話。

請記住,會話並不意味着緩存!如果您希望能夠在變量上定義到期政策,請改爲使用cache

2

在web配置中設置超時值sessionState。 正如評論所說,這不是真的把這個最好的地方。

1

會話超時設置適用於整個會話而非特定變量。

我能想到的兩個選項:

1會話超時期滿滑動。因此爲了防止它和您的會話變量過期,請在一段時間內(例如每20分鐘會話超時爲30秒)調用會話。

更好的解決方案是使用cookie,如果信息不敏感。

檢查這些鏈接可能是有用的++++

+1

這些鏈接看起來很可疑 – shanabus