在asp.net网站中为多个会话用户交换内容

Hul*_*ulk 5 c# asp.net static-methods session-variables pagemethods

我正在开发一个asp.net网站.

  • 当两个不同的用户使用不同的会话访问该网站时,一个用户内容将被交换到另一个用户.
  • 我正在使用javacsript,从.aspx页面调用pagemethods,在代码后面调用C#.
  • 当两个用户一次调用相同的功能时,主要发生此问题.
  • 我认为静态变量可能会导致这个问题,并尝试不使用任何静态变量或静态函数,除了pagemethod函数,其中页面方法是静态的.

请帮我解决这个问题.

Tom*_*dia 5

也可能与线程有关.锁定这些变量,看看是否有帮助.

静态方法不保证静态变量状态,即使这些方法保证是线程安全的.您必须管理该状态,并且asp.net将静态变量视为在所有用户之间共享.从相关问题中查看此答案.

更多阅读:线程同步


小智 1

我们遇到了类似的问题,发现是我们的负载均衡器(f5 Big-IP)弄乱了会话 ID。我们将负载均衡器更改为有状态的,它现在功能完美......