在我的MVC项目中,我有两种要提交的表单,我想将其重定向到相同的ThankYou页面。
在2个表单的控制器上,我在ViewBag中保存了ThankYou页面的文本。
在控制器上,我像这样设置ViewBage:
if (result == "success")
{
ViewBag.ThankYouText = "We have received your Contact us request."
return RedirectToAction("Index", "ThankYou",ViewBag);
}
在ThankYou视图上,我得到了:
<p>ViewBag.ThankYouText</p>
但是,我的ThankYou页面上什么也没得到。
我是纯MVC的新手,所以我一定做错了任何主意吗?
您不能将ViewBag值从一个控制器传递到另一个。它应该仅用于从控制器传递数据以进行查看。
如果要在控制器之间传递数据,则可以使用TempData。
如下更改控制器:
if (result == "success")
{
TempData["ThankYouText"] = "We have received your Contact us request."
return RedirectToAction("Index", "ThankYou");
}
更改您的视图,如下所示:
<p>@TempData["ThankYouText"]</p>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句