在ASP.NET中维护整个应用程序的SessionID

时间:2010-04-07 20:02:47

标签: c# asp.net session

我正在实现电子商务项目,我需要静态SessionID,有没有办法在整个Application中维护SessionID。我的问题的解释在这里 session.sessionid in asp.net? 但我怎样才能实现这种方法。

2 个答案:

答案 0 :(得分:2)

现在我理解你的观点

你必须在Global.asax文件

上做这样的事情
protected void Session_Start(Object sender, EventArgs e)
{
  Session["DummyData"] = "dummy";
}

在创建后的第一时间向Session对象添加任何值,可以避免获取不同的SessionID,因为尚未访问Session对象。

修改
无论如何检查你的上一条评论我都没有看到这是以某种方式影响你的开发的东西。可能你在考虑这个问题。如果您只是需要避免用户购买超过X的产品,您不关心这个问题。将第一个产品添加到会话中时,将在连续请求中使用相同的SessionID,直到它过期。

答案 1 :(得分:0)

阅读您提到的其他帖子,听起来似乎没有使用Session,因此每个请求都会生成一个新的会话ID。要解决此问题,只需在第一次请求中在会话中存储某些内容(任何内容),以确保其粘贴。

Session["something"] = "anything";

或者,可能是用户不允许使用cookie,这也会导致每次请求都有新的会话。因此,您的用户需要允许使用Cookie。

或者你可以使用无cookie会话。

另一篇文章很好地解释了,我想。