gpt4 book ai didi

c# - .Net MVC4 重定向到操作未按预期工作

转载 作者:行者123 更新时间:2023-11-30 14:08:37 27 4
gpt4 key购买 nike

这可能是个愚蠢的问题,但 RedirectToAction() 似乎无法正常工作。

我有一个管理 Controller 作为一个单独的区域完成,我有一个注销任务方法,我只是想在注销时获取重定向到网站索引的方法,但它把我带到了admin 路由,我不知道为什么,因为我正在调用该方法,在该 Controller 内为它提供 Controller 名称和操作方法名称。相反,它需要我: http://localhost:63374/Admin/Home

我做错了什么吗?

        [Route("logout")]
public async Task<ActionResult> Logout()
{
var authManager = HttpContext.GetOwinContext().Authentication;

authManager.SignOut();

return RedirectToAction("index", "home");
}

最佳答案

如果未指定,路由值将在调用之间保留。由于您在管理区域中并且未在 RedirectToAction 方法中指定区域,因此路由引擎将保留对管理区域的引用。

要解决这个问题,您可以:

  • 将您的注销操作移到管理区域之外,或者,
  • 通过将区域设置为空字符串,指定 RedirectToAction 应该找到当前区域之外的 Controller 。

return RedirectToAction("Index", new{controller="Home", area=string.Empty});

关于c# - .Net MVC4 重定向到操作未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34552749/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com