我有一个使用C#和.NET Framework 4.6的ASP.NET Webforms站点,并且遇到了其他标签/窗口阻止回发的问题。
(按标签我的意思是浏览器标签/窗口,而不是页面控件上的标签)
因此,选项卡1加载页面“/ Members / Search”并且用户单击搜索按钮,发生执行数据库查询并返回结果的异步ajax回发。
当选项卡1在回发中加载结果时,第二个选项卡打开了“/ Users / Active”页面,其中有一个使用异步ajax回发的计时器并获取当前活动用户的列表并显示它们。
如果标签1需要10秒钟才能加载搜索结果,标签2将等待,直到标签1完成其ajax回发,然后Tab 2的ajax回发才会发生并加载数据。
我进行了搜索和搜索,但没有找到解决方法。是否有一些我缺少或可以更改的内容,它允许每个回发使用不同的标签并加载自己的数据而不会互相支持?
我尝试过最新的Microsoft Edge和Google Chrome浏览器,两者的行为方式相同。
** ------------------更新信息----------------- **
1)如果我完全单独的浏览器实例(1 Edge和1 Chrome)那么没问题,它们都回发就好了。如果我有两个相同浏览器的单独窗口,每个窗口有1个标签,它们仍会相互影响。作为测试,我甚至尝试在快捷方式中添加“--process-per-tab”和“--process-per-site-instance”,但都没有任何效果。如果我使用完全独立的Chrome实例,例如一个隐身窗口和一个常规窗口,它可以正常工作,它们不会相互影响。
2)我在IDE和生产中都使用IIS运行,两者都表现出相同的行为。
3)否,服务器上的CPU使用率不会超过10%,本地CPU使用率也不会超过。
4)它们是异步的ajax回发。 Telerik RadAjaxManager和RadAjaxManagerProxy对象用于ajaxification。