如果我在 session 变量中存储一个值
Session["Int"] = 100;
Session_End 事件中会发生什么?它是 null 还是 100?
void Session_End(object sender, EventArgs e)
{
object objInt = Session["Int"]; // Null or 100 ?
}
意思是,Session_End 会在 session 中或之前处理完所有内容后触发吗?
最佳答案
它是 100。
要自己测试,只需添加 ASP.NET 应用程序文件 global.asax
到您的项目并处理 Session_Start
结束 Session-End
事件:
void Session_Start(object sender, EventArgs e)
{
Session["Int"] = 100; // 100
}
void Session_End(object sender, EventArgs e)
{
object objInt = Session["Int"]; // it is still 100 here
}
您可以通过
Session.Abandon()
结束 session (或到期时)。protected void Page_Load(object sender, EventArgs e)
{
Session.Abandon(); // after this Session.End is called
}
关于Session_End 事件中 Session 变量的 asp.net 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12294532/