【发布时间】:2017-07-23 12:49:01
【问题描述】:
我有这个模型:
public class MyClassVM
{
public Product MyProduct { get; set; }
public IEnumerable<Dog> MyDogs { get; set; }
}
然后我在控制器中有这个动作:
[HttpPost]
public ActionResult MyAction(MyClassVM)
{
//do something...
}
我有一个 html 视图,并且尝试绑定对象并将其作为参数从视图发送到控制器已经有一段时间了,但我还不能... 这样做的正确方法是什么?
<form method="post" action="MyController/MyAction">
@{ foreach (var dog in Model.MyDogs)
<tr>
<td><input type="checkbox" name="[@i].MyDogs" /></td>
</tr>
}
<input type="hidden" name="MyProduct" value="@Model.MyProduct"/>
<input type="submit" value="Submit"/>
</form>
但是当它到达控制器时总是空的......我已经使用开发工具检查了请求并且数据没有正确绑定。在我看来,我可能需要将serialize 对象转换为Json 格式???
【问题讨论】:
-
您可能希望将
IEnumerable<Dog> MyDogs转换为IList<SelectListItem> MyDogs,例如this。 -
MyProduct 已绑定,但 myDogs 未绑定?
-
两者都没有被绑定,但此时我想我找到了
myDogs的解决方案,但是MyProduct暂时没有被绑定......
标签: c# asp.net-mvc razor request