开发者

.NET MVC : Pass back complex object or list array from view to controller

开发者 https://www.devze.com 2023-01-07 01:12 出处:网络
I want to pass a list array from the View to the controller on submission of the form. I can pass back simple values by using the 开发者_Python百科Html.hidden() function. But how does one pass back a

I want to pass a list array from the View to the controller on submission of the form. I can pass back simple values by using the 开发者_Python百科Html.hidden() function. But how does one pass back a complex object or a List array


You can either use Json or look into the following example

http://blog.stevensanderson.com/2010/01/28/editing-a-variable-length-list-aspnet-mvc-2-style/


You can pass back a list within a view model using Html.hidden for each element of a list.

The list property in your view model will be re-constructed as long as you process the list elements using a for loop in your view (foreach will not work). For example:

@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);
}
0

精彩评论

暂无评论...
验证码 换一张
取 消