asp.net会话如何延长,每个请求都会延长会话结束日期,并且足以通过ajax调用void()来将会话结束日期延长一段时间(默认20分钟左右...)
public void ResetSessionTime()
{
}
或者我必须以某种方式调用会话:
public void ResetSessionTime()
{
User currentUser = HttpContext.Current.Session[userSessionKey] as User;
}
简单请求如何延长会话结束日期?
This问题声称每次回复延长会话......
This关于会话状态提供商的MSDN:
“ASP.NET创建的每个会话都有一个超时值(默认为20 分钟)与之相关。如果没有访问会话 在会话超时内,会话被视为已过期,并且 它不再有效。“
请求如何准确访问会话?
这个问题:Keeping session alive C#没有回答会话结束日期是如何被请求延长的,只是关于如何从客户端保持会话活动的意见
修改
根据this article,需要从IHttpHandler扩展方法,以便访问当前会话......
public class KeepSessionAlive : IHttpHandler, IRequiresSessionState
{
public void ProcessRequest(HttpContext context)
{
context.Session["KeepSessionAlive"] = DateTime.Now;
}
}
答案 0 :(得分:2)
每次发出请求时,会话超时都会重置。请求可以是页面加载或类似ASYNC调用。
请看一下这个问题,了解如何通过定期向服务器发出AJAX调用来保持会话处于活动状态。 (Keeping ASP.NET Session Open / Alive)