1

在我的控制器中,我想重定向。我有两个选择:

if(User.Identity.IsAuthenticated)
{
    return RedirectToAction("Index", "Home");
}

或者

if(User.Identity.IsAuthenticated)
{
    return Redirect("~/home");
}

在我的路线中,我有:

     routes.MapRoute(
        "spa",
        "{section}/{id}",
        new { controller = "Home", action = "Index", id = UrlParameter.Optional },
        new { section = @"home|questions|admin" });

有人可以告诉我选择一个重定向与另一个重定向是否有任何区别。

4

1 回答 1

1

使用 RedirectToAction 会更好,因为至少你可以指定你所指的控制器和路由等。可能会改变,就像你做重定向一样,你很可能会输入一个无效的路径(即更多错误比使用 RedirectToAction 更容易,因为它为你创造了魔力)

请记住,ASP.NET MVC 是建立在 ASP.NET 之上的,因此请尽可能多地利用 MVC 的优点。从长远来看,将为您省去头痛!

于 2013-10-12T20:45:04.420 回答