ASP.net MVC - 视图上的多个表单,每个调用不同的操作,但需要再次显示相同的视图

Posted

技术标签:

【中文标题】ASP.net MVC - 视图上的多个表单,每个调用不同的操作,但需要再次显示相同的视图【英文标题】:ASP.net MVC - Multiple Forms on View, each calling a different action, but need to show the same view again 【发布时间】:2010-10-19 18:29:44 【问题描述】:

我的视图上有 3 个表单。这些中的每一个都返回到不同的操作。动作完成后,我调用最初将用户引导至页面的原始动作,但 MVC 正在寻找回发动作的视图。如何让 MVC 发布到当前视图的不同名称的操作,同时仍然让它重新加载同一页面?

【问题讨论】:

【参考方案1】:

当你完成你的 post pack Action 后返回这个:

return RedirectToAction("OriginalAction");

【讨论】:

喜欢这个工作方式。我也必须传入它需要的参数,所以只需输入 RedirectToAction("OriginalAction", new param = "blah");【参考方案2】:

我将如何解决这个问题: 在您看来,对于每种形式:

<% using(html.BeginForm<ControllerController>(c => c.Action1(param))

    // Form Stuff
 %>

在你的行动中:

[HttpPost]
public ActionResult Action1(type param)

    // Do your work;
    return this.RedirectToAction(c => c.OrigionalAction(param));

强类型 Html.BeginForm 来自 MVCFutures (Microsoft.Web.Mvc) 强类型 RedirectToAction 来自 MvcContrib。

【讨论】:

完全跑题了,但是thanx,不久前使用过mvc,在新项目中我不知道我是如何管理强类型表单和操作的

以上是关于ASP.net MVC - 视图上的多个表单,每个调用不同的操作,但需要再次显示相同的视图的主要内容,如果未能解决你的问题,请参考以下文章

asp.net mvc视图中的C#复选框事件不在表单内

asp.net mvc,以 JSON 形式返回多个视图

如何在 ASP.NET MVC 中通过 Ajax 提交表单?

将多个模型传递给 ASP.NET MVC 中的视图

是否可以将多个模型对象发送到 ASP.NET MVC 视图?

iframe 在 MVC 视图中加载 asp.net web 表单