您好我的应用程序中有两个控制器和两个视图。
我在订阅控制器中有一个保存方法。我想在保存完成后调用Home Controller / Index View。当我执行以下操作时,我发现页面未找到错误。
返回重定向(“主页/索引”);
OR
返回视图(“主页/索引”);
有人可以告诉我为什么视图没有被调用?
谢谢和问候 Ranjit Menon
答案 0 :(得分:3)
您必须使用RedirectToAction
,因为您的操作主要是ActionResult
:
return RedirectToAction("Index","Home");
或者如果你想在没有动作的情况下简单地返回视图,那么:
return View("~/Views/Home/Index.cshtml");
查看更多details here
第二个不推荐你应该使用第一个重定向到主页/索引,你不应该在asp.net mvc中使用Rediect
你应该使用RedirectToAction
< / p>
答案 1 :(得分:0)
为了补充Ehsan的答案,我想指出如果你将来需要这样做,如何传递参数:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult PaymentBillMe(string pledgeAmt, string month, string radioBtn, string btn)
{
return RedirectToAction("PaymentConfirm", new
{
paymentSelection = radioBtn,
paymentAmt = pledgeAmt,
selectedMonth = month
});
}
[HttpGet]
public ActionResult PaymentConfirm(string paymentSelection, string paymentAmt, string selectedMonth)
{
//Do something with parameters...
return View();
}
在这里,我将单选按钮选择,承诺金额和所选月份传递给付款确认方法,对这些参数执行某些操作,然后返回该视图。