我是MVC的新手,我正在尝试掌握在例如表单成功或失败后向用户显示消息的方法。假设我有一个类似下面的帖子功能,我的目的是提供局部视图,但显然这不符合我的想法。有关如何在成功提交表单后如何显示局部视图的指示?当我在下面的代码中执行此操作时,我当然会被重定向到部分视图,而不是仅仅在当前视图中显示它们,这是我想要的。
[HttpPost]
public ActionResult Test(bool succeeded)
{
if (succeeded)
{
ViewBag.SuccessMessage = "Success!";
return View("_SuccessMessage");
}
else
{
ViewBag.SuccessMessage = "Error!";
return View("_ErrorMessage");
}
}
答案 0 :(得分:1)
如果您希望保持相同的视图,只需返回当前视图并在模型或动态ViewBag上设置一些标记,请求成功或错误。在您的视图中,您可以包含基于该标志的_ErrorMessage或_SuccessMessage,如果未设置该标志,则不要重新查找任何这些部分。 此外,如果您必须重定向到另一个视图并在那里显示成功/错误,您可以使用TempData集合。