ASP.net会话默认是共享的?

时间:2009-02-20 21:45:18

标签: c# asp.net session-variables

我正在创建一个使用会话变量的应用程序。我创建了一个类“HistoryLine”,另一个名为“HistoryLineCollection”,其中包含一个“HistoryLine”列表。然后我将HistoryLineCollection的实例保存到会话中,如下所示:

Session [“HistoryLines”] = hLines;

问题在于,当我在另一台计算机上观看时,我看到了相同的列表!我认为会话客户端独特吗?我已经调查了sessionState,可能会克隆SessionID或者其他东西,但我看不到它。有人有想法吗?

3 个答案:

答案 0 :(得分:1)

不,asp.net会话未共享。实现这一目标的一种方法是在一台计算机上浏览应用程序,然后使用另一台计算机上的链接(比如说你是某人)。在这种情况下,如果您碰巧禁用了Cookie,则会话ID位于Url上。另一个人将参加同一场会议。 如果不是这样,那么请真正了解您正在使用的类,特别是标记为静态的类。

答案 1 :(得分:1)

创建的类的成员是否以某种方式静态(又称为共享)进入Session?

答案 2 :(得分:0)

检查创建列表的代码以进入会话。您可能正在为每个会话创建相同的列表。