我是MVC的新手(已经做了多年的经典ASP)。我不确定我知道如何提出这个问题。基本上,我希望一个控制器的动作无缝转移/重定向到另一个视图/控制器。我试过了
public class SetupController : Controller
{
...
public ActionResult Bicycles()
{
return RedirectToAction("Index", "Bicycles");
}
}
但问题是这会将我带到localhost / Bicycles(不存在)。我想要的是去localhost / Setup / Bicycles。我尝试了这个(将“Setup”父文件夹添加到控制器名称):
public class SetupController : Controller
{
...
public ActionResult Bicycles()
{
return RedirectToAction("Index", "Setup/Bicycles");
}
}
但是这创建了一个无限的重定向循环,浏览器正确地拒绝这样做。
希望我正在努力做到这一点。
答案 0 :(得分:0)
我相信你要找的是:
public ActionResult Bicycles()
{
return RedirectToAction("Bicycles", "Setup");
}
第一个参数是Action,第二个参数是Controller。
由于您已经在自行车操作中的SetupController中,您将获得无限重定向。但是,根据您的提及,这是您尝试重定向到的位置。
答案 1 :(得分:0)
protected internal RedirectToRouteResult RedirectToAction(
string actionName,
string controllerName
)
所以你的第一个例子重定向到Bicycles控制器中的Index动作,因此是localhost / Bicycles。