调用Session.Abandon()时实际发生了什么?

时间:2016-12-06 15:36:23

标签: c# asp.net-mvc session

我很好奇在MVC应用程序上调用Session.Abandon()时会发生什么。当我的应用程序中的用户未通过身份验证时,我正在调用此方法。

public ActionResult Authentication(string message = "")
{
    Session.Abandon();
    return View(new ErrorMessage { message = message});
}

这种情况下的良好做法是什么?

我应该在所有错误重定向上调用它吗?

我应该在MVC应用程序的生命周期中何时调用Session.Abandon()?

1 个答案:

答案 0 :(得分:2)

根据MSDN documentation

  

Abandon方法销毁存储在Session对象中的所有对象并释放其资源。如果未明确调用Abandon方法,则服务器会在会话超时时销毁这些对象