在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设置为空。