3

如何在 ASP MVC 4 中重定向页面?

我试过Redirect, RedirectPermanent, RedirectToAction, 等等。但它就像 HTTP 重定向(使用http-equiv refresh),而不是 Header Redirect。它将首先显示 Header Status 302,然后重定向。我想要像这样的标题重定向php header('location:/');

 

[HttpGet]
public ActionResult SignOut()
{
    UtilsHelper.NoCache();
    session.Destroy();
    return RedirectToAction("Index", "Home");
}
4

2 回答 2

3

如果您真的担心重定向代码,您可以在较低级别控制它。

[HttpGet]
public ActionResult SignOut()
{
    UtilsHelper.NoCache();
    session.Destroy();
    HttpContext.Response.Clear();
        HttpContext.Response.StatusCode = 302; //change it to 301?
        HttpContext.Response.RedirectLocation = "/";
        HttpContext.Response.End();
}

我不确定这里的 302 有什么问题?

于 2013-06-12T07:43:36.463 回答
0

您可以使用 Server.Transfer 而不是 Response.Redirect

请参阅
如何在 ASP.NET MVC 中模拟 Server.Transfer?
了解更多信息

于 2014-10-17T16:23:03.627 回答