.NET MVC:将复杂对象或列表数组从视图传递回控制器

时间:2010-07-12 16:57:47

标签: .net asp.net-mvc-2

我想在提交表单时将View列表数组传递给控制器​​。 我可以使用Html.hidden()函数传回简单值。但是如何传回一个复杂的对象或一个List数组

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

可以使用Html.hidden为列表中的每个元素传回视图模型中的列表。

只要您在视图中使用for循环处理列表元素,就会重新构建视图模型中的list属性(foreach将无效)。例如:

@for (var i = 0; i < Model.Nutrients.Count(); i++) 
{
  // This ensures that the list of nutrients is passed in the view model back to the controller
  @Html.HiddenFor(m => m.Nutrients[i].Name);
  @Html.HiddenFor(m => m.Nutrients[i].Id);
}