In ASP.NET, when should I use Session.Clear() rather than Session.Abandon()?

后端 未结 4 611
滥情空心
滥情空心 2020-11-28 19:32

Both Session.Clear() and Session.Abandon() get rid of session variables. As I understand it, Abandon() ends the current session, and causes a new session to be created thus

4条回答
  •  隐瞒了意图╮
    2020-11-28 19:43

    Session.Abandon() destroys the session and the Session_OnEnd event is triggered.

    Session.Clear() just removes all values (content) from the Object. The session with the same key is still alive.

    So, if you use Session.Abandon(), you lose that specific session and the user will get a new session key. You could use it for example when the user logs out.

    Use Session.Clear(), if you want that the user remaining in the same session (if you don't want the user to relogin for example) and reset all the session specific data.

提交回复
热议问题