重定向至“异步控制器操作不起作用”中的“控制器操作”诊断树



从该控制器操作重定向时遇到问题

[HttpPost]
public async Task<ActionResult> Login(LoginBindingModel model, string returnUrl)

使用

if (loginViewModel.IsConfirmed)
            {
                await accountService.AuditLogin().ConfigureAwait(false);
                user = await usersService.GetUser().ConfigureAwait(false);
                await SessionWrapper.SetCurrentApplicationUserAsync(user.Data).ConfigureAwait(false);
                await SessionWrapper.SetIsAuthenticatedAsync(true).ConfigureAwait(false);
                **return RedirectToAction("Index", "Fixtures");**
            }

什么也没发生,它只是重定向回同一个页面。我到处看了看,但我发现的信息并没有帮助。

我重定向到的控制器操作如下:

[HttpGet]
public async Task<ActionResult> Index(){...}

我有一种感觉,这与它是一个异步方法有关,但我对它的了解还不够,无法修复它

如有任何帮助,我们将不胜感激。

如果两个方法都在同一个控制器中,则返回RedirectToAction("Index","Fixtures"),而不是

写入"return RedirectToAction("索引");"

如果它们不在同一个控制器中,则

write"return RedirectToAction("Index","方法所在的控制器的名称");"

我认为这应该奏效。

好吧,这都是我做的!

我完全忽略了显而易见的东西。我现在将我的会话保存在Redis缓存中,因为我在异步访问和设置时遇到了问题,但忘记更改将我重定向回登录的会话检查器。

一旦我更改了这些,我就可以跳过登录页面了。

感谢您的帮助,很抱歉浪费您的时间:)

最新更新