这是一种方式,如果一个asp.net网络表格会话被droped(例如,客户端欺骗浏览器=超时)会引起注意吗?
我们有一个临时用户购物卡会话:
HttpContext.Current.Session["UserShoppingCard"] = new UserShoppingCard();
除了上面解释的功能之外,每件事情都很好。
谢谢!
答案 0 :(得分:5)
我会尝试拦截global.asax文件中的 Session_End 事件,并在那里添加一些日志记录,它可能不会在浏览器关闭时发生,但无论如何都会在某个时刻发生会话终止,您可以在那里包含您的逻辑。
事实上,服务器永远不知道浏览器何时关闭,或者连接问题是否导致客户端无法连接。
答案 1 :(得分:3)
如前所述,补充代码......
public class Global : System.Web.HttpApplication
{
protected void Session_End(object sender, EventArgs e)
{
//Do your things here when session ends...
}
}