在单个实例上运行的Web页面

本文关键字:Web 页面 运行 单个 实例 | 更新日期: 2023-09-27 18:05:02

我正在写一个网页,应该由多个用户同时使用。该页面包含一些过滤器,因此每个用户应该得到他们过滤的结果。

问题是,一旦用户A在自己的页面上更改了过滤器,用户B的过滤器就会更改为用户A的选择。

它更新过滤器的方式是一旦设置了过滤器控件,执行Response.Redirect("search.aspx?filter_a=12&filter_b=1&....."),然后读取查询字符串来设置过滤器的搜索结果。

症状1:

time 0: user A load page as first , all filter off.
time 0:  user B load page as first , all filter off.
time 1 : User A set filter  a b c On, submit
time 2 : User B set filter  x on, then page submit  
time 3:  After User B's page gets refreshed, User B see   filter a b c and x On.

症状2:

time 0: user A load page as first , all filter off.
time 0:  user B load page as first , all filter off.
time 1: user A set  filter  a on, submit. then user A's page filter a is on.
time 2: user B do nothing just refresh page,  will see filter a is on.

结果应该是:

on A's page only filter a b c  are On
on B's page only filter x is on.

这让我觉得,网页只在同一个实例上运行,每个人都共享它的控制权。

如何将其设置为多实例以支持不同的用户?

在同一台机器上运行不同的电源,不同的机器,不同的机器在不同的公共ip上,都有问题

在单个实例上运行的Web页面

我只能猜测,因为没有提供源代码。
我的猜测是,您的应用程序内存中有静态对象,这些对象在不同的用户之间为不同的请求共享。尝试使用与单个请求绑定而不是与应用程序绑定的实例。