SessionID在ASP.NET MVC中不断变化为什么?

dsw*_*tik 45 asp.net-mvc session

我试图跟踪某些事情并使用SessionID作为该对象的关键

然而SessionID每2-3个reqiests变化不应该保持不变?

HttpContext.Session.SessionID
Run Code Online (Sandbox Code Playgroud)

是我正在使用的代码.

Max*_*xam 49

我已经看到即使没有MVC也会发生这种情况.如果我没记错的话,ASP.NET会一直在分配新的会话ID,直到你把一些东西放到Session变量中.

  • 请参阅[stackoverflow.com/questions/2874078/asp-net-session-sessionid-changes-between-requests](http://stackoverflow.com/questions/2874078/asp-net-session-sessionid-changes-between-requests ) 欲获得更多信息. (3认同)

小智 25

您应该在其中初始化Session对象Global.asax.cs.

void Session_Start(object sender, EventArgs e)
{
    HttpContext.Current.Session.Add("__MyAppSession", string.Empty);
}
Run Code Online (Sandbox Code Playgroud)

这样,除非关闭浏览器窗口,否则会话不会更改.


rob*_*rdo 5

我正在研究.NET MVC购物车应用程序,我补充道

Session["myVar"] = "1234";
Run Code Online (Sandbox Code Playgroud)

到Default.aspx.cs代码中找到的Page_Load方法.我还补充道

<%=  this.Session.SessionID %>
Run Code Online (Sandbox Code Playgroud)

到Site.Master页脚.然后我重建了我的应用程序并浏览了我的应用程序的各个页面,页脚显示所有页面的预期相同的会话ID!