处理动作方法.net MVC上的并发请求

时间:2014-09-24 04:07:32

标签: c# asp.net-mvc

有一个ASP.NET MVC操作方法可以重定向到特定页面,但也有另一种方法重定向到另一个页面。如果两个方法同时被命中 - 我如何指示C#仅重定向到第一个方法URL。它显示第一种方法在调试器中命中,但第二种方法命中并重定向到最后一次命中URL。

如何仅重定向到第一个命中方法?

我有一个ajax请求,每5个secend就会命中一次。如果没有经过身份验证,请点击注销方法。

  function Authenticate() {

                            ajax = $.ajax({
                                type: "POST",
                                url: "/EmployeePortal/Dashboard/Authenticate",
                                data: "q=123",
                                success: function (isAuthenticated) {
                                    if (!isAuthenticated || count > 360) {

                                        window.location.replace("/PortalAccount/SignOut");
                                    } else {
                                        count++;
                                    }
                                }
                            });
                        }

我也有一个手动注销同一方法的链接。但是有一个id可以单独识别它。

  public virtual ActionResult SignOut(string id)
    {
        object obj = new object();

        lock (obj)
        {
            if (!id.IsEmptyOrNull())
            {
                ClearSession();

                return Redirect(ConfigSettings.Current.CurrentConfigSetting.SignOutRedirectUrl);
            }
        }
        Thread.Sleep(1000);
        ClearSession();
        ActionResult loginAction = MVC.PortalAccount.Login();
        return RedirectToAction(loginAction);

    }

有时当我手动点击退出时出现问题。 5秒钟将同时出现,它将重定向到错误的页面。我怎么能避免那个

0 个答案:

没有答案