【问题标题】:asp.net values of Session variables in Session_End eventSession_End 事件中 Session 变量的 asp.net 值
【发布时间】:2015-06-30 02:38:32
【问题描述】:

如果我在会话变量中存储一个值

    Session["Int"] = 100;

Session_End 事件中的内容是什么?它是 null 还是 100?

void Session_End(object sender, EventArgs e)
{
      object objInt = Session["Int"];          // Null or 100 ?
}

意思是,Session_End 会在处理完会话中的所有内容之后还是之前触发?

【问题讨论】:

标签: asp.net events session session-variables


【解决方案1】:

是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()(或到期时)结束会话。

protected void Page_Load(object sender, EventArgs e)
{
    Session.Abandon();  // after this Session.End is called
}

【讨论】:

【解决方案2】:

我发现 Session["Int"] 将为 100。我将会话超时设置为仅 1 分钟,并在该事件中设置了一个断点。

【讨论】:

  • 好吧,当我发布我的答案时,有人已经回答了,所以这是巧合
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多