【问题标题】:web page running on single instance?在单个实例上运行的网页?
【发布时间】:2016-08-31 11:58:44
【问题描述】:

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

问题是,一旦用户 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的不同机器,都会遇到问题。

【问题讨论】:

  • 您能否分享文件背后的代码,以了解您在 c# 代码中实际执行的操作?

标签: c# asp.net iis multi-user


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-14
    • 2016-10-13
    • 2016-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多