SessionStateModule.End 事件
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在会话结束时发生。
public:
event EventHandler ^ End;
public event EventHandler End;
member this.End : EventHandler
Public Custom Event End As EventHandler
事件类型
示例
下面的代码示例演示定义了 Session_OnStart 和 Session_OnEnd 事件的 Global.asax 文件的内容。
<script language="VB" runat="server">
Public Sub Session_OnStart()
End Sub
Public Sub Session_OnEnd()
End Sub
</script>
<script language="C#" runat="server">
public void Session_OnStart()
{
}
public void Session_OnEnd()
{
}
</script>
注解
调用 End 方法或会话过期时 Abandon ,在请求结束时引发 事件。 当属性指定的 Timeout 分钟数通过而不对会话发出请求时,会话将过期。
Session_OnEnd 事件用于为会话执行任何清理工作,例如释放会话使用的资源。
可以通过将名为 Session_OnEnd 的公共子例程添加到 Global.asax 文件来指定事件的处理程序End。
注意
仅当会话状态HttpSessionState.Mode属性值为 InProc(默认值)时,才支持Session_OnEnd事件。 如果会话状态 Mode 设置为 StateServer 或 SQLServer,则会忽略 Global.asax 文件中的 Session_OnEnd 事件。 如果会话状态 Mode 属性值为 Custom,则 对 Session_OnEnd 事件的支持由自定义会话状态存储提供程序确定。
虽然事件 End 是公共的,但只能通过在 Global.asax 文件中添加事件处理程序来处理它。 之所以实现此限制,是因为 HttpApplication 实例是出于性能而重复使用的。 会话过期时,仅执行 Global.asax 文件中指定的 Session_OnEnd 事件,以防止代码调用 End 与当前正在使用的 HttpApplication 实例关联的事件处理程序。
有关 Global.asax 文件的详细信息,请参阅 Global.asax 语法。