在MVC Web開發中臨時存儲數據一般會用到Session,Cookie,ViewBag,ViewData,TempData。每個的使用場景是不同,具體區別有空再補上。
Session數據最敏感,最需要保證安全!
SessionID正確的刪除方法:
this.Session.Abandon(); this.Response.Cookies.Add(new HttpCookie(”ASP.NET_SessionId”, string.Empty) { HttpOnly = true });
Session.Clear(),Session.RemoveAll()方法都是只對Session里頭數據進行清理,RemoveAll最終也是調用Clear方法。而Abandon是廢棄整個SessionID,不過特殊的地方在於Abandon會觸發Session_End方法。而且Abandon的SessionID在本次請求中還是有效的,在下次請求開始將使用新的SessionID,如果不想使用的話需要將SessionID設置為空。