2013-08-22 56 views
0

當您使用cookieless="false"模式中的會話web.config時,它將會話ID存儲在cookie值(我的意思是aspnet_sessionId)中。我想知道是否由於任何原因會話ID更改此cookie的值會自動更新或不?從cookie或請求中讀取會話ID有什麼區別?

而正是通過這兩個語句讀取用戶會話ID之間的區別:

System.Web.HttpContext.Current.Session.SessionID 

VS

Request.Cookies["Aspnet_sessionId"].Value 

回答

0
System.Web.HttpContext.Current.Session.SessionID 

是一條 「捷徑」,以

Request.Cookies["Aspnet_sessionId"].Value 

正如你所說,這不能保證將SessionID存儲在cookie中。根據應用程序的配置和客戶端的偏好,SessionID也可以是一個GET參數。

因此,您應該使用Session.SessionID以確保您始終能夠正確檢索它。

相關問題