MVC6 Taghelper将模型发布到控制器

时间:2015-08-27 17:49:27

标签: asp.net-core-mvc tag-helpers

我正在研究MVC6应用程序,我想要一个按钮将视图的模型发布到控制器。我使用taghelper进行以下标记 -

<a asp-route-area="MyArea" asp-controller="MyController" asp-action="MyAction">Save</a>

这是我在视图中的模型声明 -

@model MyObject

这是我的控制器动作 -

public IActionResult MyAction(MyObject mo)
{            
     return new EmptyResult();
}

当我单击按钮时,它被正确路由到控制器,但模型对象为null。 如何通过单击按钮将整个模型发回控制器?

仅供参考 - 我的目标是在表单上放置多个按钮,根据点击的按钮将视图的模型发布到不同的mvc控制器。

编辑 - 我不一定需要它发布到不同的控制器/动作。我能够让控制器决定如何处理,这似乎完成了我的需要。

2 个答案:

答案 0 :(得分:0)

我最终使用了here概述的解决方案。 基本上它的工作方式是你创建两个不同名称的按钮,并使用按钮名称控制器参数。然后我只检查那些参数,如果它们有值,我就这样处理。

答案 1 :(得分:0)

您可以在按钮上使用html表单操作

类似的东西:

<form action="/submitNormal" method="get">
   First name: <input type="text" name="fname"><br>
   Last name: <input type="text" name="lname"><br>
   <button type="submit">Submit normal</button><br>
   <button type="submit" formaction="="/submitDifferent">Submit different</button>
</form> 

不确定浏览器支持。

相关问题