为什么我的应用程序需要两个sessionID?

时间:2011-07-26 15:17:19

标签: asp.net session

在Web应用程序中,出于某种原因我需要SessionID,因此,我将其保存在数据库中。应用程序在启动之前执行两次重定向,我发现它获取了两个SessionID。第二个仍然存在。

为什么会这样?任何的想法?如何防止在DB中保存一条记录。

很抱歉,因为我无法发布代码,它与另一种逻辑复合。

2 个答案:

答案 0 :(得分:2)

失去/重新开始会话有数百万个可能的原因。没有你的代码,很难提供建议。

您可以自己尝试的一件事是在global.asax文件中使用Session_End事件,只要您使用的是inProc会话即可。将一些代码放在那里让它在会话结束时告诉你,这样你就可以追踪问题/导致它在你的应用程序中结束的原因。

另一个人认为你可以看一下你的重定向方法。确保你保留会话,如下所示:Response.Redirect(“〜/ default.aspx”,false)。

答案 1 :(得分:1)

另一种可能性是你可能没有在第一次会话中加入任何内容。默认情况下,您将在每个回发 上获得一个新的sessionID,除非 您在会话中添加了某些内容。