2012-09-08 193 views
3

我学习ASP.NET MVC和具有如下保存模型的一个问题:asp.net的MVC模型绑定

订单 - >的OrderItems

在我创建视图,我会将一些项目添加到订单中,当我按下提交时,我希望项目数据绑定到model.OrderItems。我怎样才能做到这一点?

[HttpPost] 
    public ActionResult Create(OrderViewModel model) 
    { 
     ............... 
     //iterate item list and add to main order 
     foreach (var item in model.OrderItems) <~ this is what I'm trying to do 
     { 

     } 
     ............... 
    } 

非常感谢。

+0

能否请您发表您的创建查看? – nemesv

回答

5

如果他们是连续的,你可以创建你的每一个输入的索引:

<input type="text" name="OrderItems[0].Name" value="Stuff" /> 
<input type="text" name="OrderItems[0].Price" value="5.00" /> 
... 
<input type="text" name="OrderItems[1].Name" value="OtherStuff" /> 
<input type="text" name="OrderItems[1].Price" value="15.00" /> 

或者你需要提供一个索引:

<input type="hidden" name="OrderItems.Index" value="@item.ItemId" /> 
<input type="text" name="OrderItems[@item.ItemId].Name" value="Stuff" /> 
<input type="text" name="OrderItems[@item.ItemId].Price" value="5.00" /> 
+0

是啊!它就像一个魅力!非常感谢 !!! – davidcoder