【发布时间】:2016-04-25 16:38:34
【问题描述】:
怎么了。
我有一个新的asp-... 语法的表单:
<form asp-controller="Test" asp-action="Edit" method="post" class="form-horizontal" role="form">
<div class="form-horizontal">
<div asp-validation-summary="ValidationSummary.All" class="text-danger"></div>
...
</div>
</form>
回发自定义类:
[HttpPost]
[ValidateAntiForgeryToken]
public IActionResult Edit(CustomClass object)
{
...
}
但是,我想让它回发两个不同的对象。有没有一种新的/正确的方法可以使用 Core 和 asp-... 语法来做到这一点?
如果没有,最好的方法是什么?
【问题讨论】:
-
据我所知,您只能拥有一个对象。在我看来,您似乎是在视图中直接使用模型,而您不应该这样做。您应该为某个操作创建一个 ViewModel 并在此视图模型中传递您需要的所有内容,并在操作中处理它
-
@Tseng 我确实有一个带有两个构造函数(带参数)的 ViewModel,其中包含“CustomClass object1”和“OtherClass object2”。但是,当我尝试传回 ViewModel 时,会遇到“无参数实例”错误。因此,我在 VM 中创建了另一个无参数的构造函数,但 object1 和 object2 返回为空。我不确定我错过了什么。
标签: c# asp.net-core http-post