Global.asax中的Session_End不能用Context

遇到一个问题:Web.Config中设置的Sestion timeout不起作用,设置的timeout时间到期后,Global.asax中的Session_End能够被调用,但在此事件处理函数中,Context总是为null,这样就没有办法利用Context退出登录。
原因如下:
[quote]
The Session_End event fires when the browser isn't connected to the server -- so there really isn't anyway to clear out the authentication ticket (since that is stored on the client).

What I'd recommend doing instead is changing the timeout duration of the forms-authentication ticket to be 15 minutes. That way you can avoid having to add a session_end event at all -- and just rely on the browser cookie timing out to force another login.

Q: Do I have a valid HttpContext in Session_End?
A: No, because this event is not associated with any request.
[/quote]

推荐用forms-authentication timeout,在Web.Config中配置如下:

<system.web>
<authentication mode="Forms">
<forms timeout="50000000"/>
</authentication>
</system.web>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值