RedirectToPage()在ASP.NET Core 3剃刀页面中不起作用

时间:2019-03-25 12:58:08

标签: asp.net asp.net-core razor-pages

我在Logout剃须刀页面上有以下代码。

public async Task OnPostAsync()
{
  await loginManager.SignOutAsync();
  RedirectToPage("/Identity/Login");
}

但是它没有按预期重定向到登录页面。它仍然显示“注销”页面。

如果我使用Response.Redirect()而不是RedirectToPage(),那么它将起作用。

我正在使用ASP.NET Core 3的预览版3。

请帮助。

1 个答案:

答案 0 :(得分:1)

RedirectToPage()方法正在生成一个RedirectToPageResult,而您实际上忘记了return是您的操作。

尝试以下方法:

public async Task<IActionResult> OnPostAsync()
{
    await loginManager.SignOutAsync();

    return RedirectToPage("/Identity/Login");
}