ASP.NET MVC2 - 从控制器操作返回到上一个视图

时间:2011-01-03 20:03:01

标签: asp.net-mvc-2

如何从控制器中的操作返回“上一个”视图?

我有一个可以从2个不同视图中获得的动作。

该行动有两种方式:

成功 - 然后我回到第三个不同的视角 失败 - 然后我想返回上一个视图(2中的一个) - 具有包含错误的TempData [“Message”]的相同(旧)模型数据。

我想返回发布到此操作的视图 - 如何实现此行为?

2 个答案:

答案 0 :(得分:1)

您可以将以前的视图名称作为参数传递给您的操作。

public ActionResult Edit(DataObject model, string prevAction)
{
    if (model.IsValid)
    {
        return View("SomeView");
    }
    else
    {
        return RedirectToAction(prevAction, new { data = model });
    }
}

答案 1 :(得分:0)

您可以拥有一个查询字符串变量,用于保存您想要返回的位置。

controller/action?returnUrl=original/route

这样的东西