【发布时间】:2012-10-01 20:57:24
【问题描述】:
我有一个 asp.net mvc 网页,将我的employeeid 存储在会话状态,但是当 2 名员工在同一时间范围内访问时,它似乎被覆盖或混淆了。我花了 2 个小时在谷歌上搜索答案,但没有找到。我自己不熟悉瘦客户端,所以我想知道会话状态在这种情况下是如何工作的。 如果同一用户登录到服务器/瘦客户端,他们是否共享相同的 cookie 会话状态? 我的替代方案是什么? 我们为瘦客户端一遍又一遍地使用相同的通用用户,仅供参考...
我不使用任何静态实例。 示例:Session["EmployeeId"] = model.Employee.Id;模型的非静态类。 – 瘦客户端使用的是 Windows XP Embedded。用户确实使用了不同的浏览器实例,但它仍然是两个实例的相同 Windows 通用用户名。没有代理。
因为我使用的是默认会话状态,所以它使用了 cookie,因此不同的实例仍然看到相同的 cookie 并获得相同的会话。由于这是 MVC,我无法真正更改为 url 驱动,因为这会扰乱我的路由,并且必须为此做大量工作......请任何人提出任何想法?
【问题讨论】:
-
只是为了确保:您没有在静态变量中存储任何内容,对吧?
-
这是什么瘦客户机?用户确实运行单独的浏览器实例,对吗?服务器和客户端之间是否有代理(可能会丢弃会话或将它们混合)?但是,从查看@JaneDoe 的第一条评论开始。
-
@Jane - 不,我在谷歌搜索时看到了所有内容。示例:Session["EmployeeId"] = model.Employee.Id;模型的非静态类。这段代码是一个控制器动作。
-
@driis - 瘦客户端使用的是 Windows XP Embedded。用户确实使用了不同的浏览器实例,但两个实例的 Windows 通用用户名仍然是相同的……没有代理。
-
看来,因为我使用的是默认会话状态,它使用 cookie,所以不同的实例仍然看到相同的 cookie 并获得相同的会话。由于这是 MVC,我无法真正更改为 url 驱动,因为这会扰乱我的路由,并且必须为此做大量工作......请任何人提出任何想法?
标签: c# asp.net-mvc cookies thin-client