返回View()在控制器内部无效

时间:2014-02-12 14:34:27

标签: c# asp.net asp.net-mvc

我正在使用ASP.NET MVC C#。我有以下代码行的观点:

@using (Html.BeginForm("TastingParty", "Contact"))

我正在提交与当前页面不同的控制器和操作,因此我必须在该行中添加自定义控制器和操作。现在它到达我的控制器并在方法的底部我调用"返回View();"所以它会再次显示相同的页面。但它正在Contact控制器中查找该视图,因为这是我发送它的地方。

如何返回它来自的原始视图?希望一切都有意义。

2 个答案:

答案 0 :(得分:3)

return RedirectToAction(Action,Controler)

您正在搜索此内容?

答案 1 :(得分:1)

您可以使用return RedirectToAction(...

http://msdn.microsoft.com/en-us/library/system.web.mvc.controller.redirecttoaction(v=vs.118).aspx

或者,如果您希望能够在不同的控制器中重复使用该视图,则可以将其放在Views\Shared文件夹中。

在后一种情况下,您可以将发布的模型返回到该视图。

public ActionResult YourAction(YourViewModel postedModel) {

    // do something

    return View(postedModel);
}

同样,如果您希望将其作为共享视图,则可以将其置于Views\Shared\YourAction.cshtml下。