asp.net写的,有什么办法能刷新sessionid吗

asp.net中刷新session
有一个老项目,发现在cookie中存了ASP.NET_SessionId,但是每当添加新用户时ASP.NET_SessionId不会改变导致没办法实时更新用户列表。有什么办法能刷新sessionid吗,使用过让他过期和清除的办法,但是会导致不在登录状态。

img

img

session是针对一个用户的,每个用户的都是隔离的。添加后只有添加人才可以看到。

既想保持登陆状态又想刷新sessionid,我认为是不可能的。我认为你需要考虑的是如何换个方式实现实时更新用户列表。

第一种方法,将 Session 销毁,再使 ASP.NET_SessionId 这个 Cookie 立即过期,这时将会分配一个新的 SessionId 。

HttpContext.Current.Session.Abandon()
HttpContext.Current.Response.Cookies("ASP.NET_SessionId").Expires = Now.AddSeconds(-1)

第二种方法,将 Session 销毁,再把 SessionId 设为空值或其他非 24 位的字符串。

HttpContext.Current.Session.Abandon()
HttpContext.Current.Response.Cookies.Add(new HttpCookie("ASP.NET_SessionId", ""))
如果都不行你需要考虑的是如何换个方式实现实时更新用户列表。