リストをフォームに投稿する方法を知っています。参照用のリンクはhttp://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspxです。
List> を投稿する必要があるシナリオがあります。上記のリンクに記載されているコードを使用して、投稿の値を取得しました。
生成される html は次のとおりです。
<input class="input-micro valid" min="1" name="posItems[0][0].Quantity" required="required" value="30" type="text">
<input class="input-micro valid" min="1" name="posItems[1][0].Quantity" required="required" value="20" type="text">
<input class="input-micro valid" min="1" name="posItems[2][0].Quantity" required="required" value="20" type="text">
<input class="input-micro valid" min="1" name="posItems[0][1].Quantity" required="required" value="20" type="text">
<input class="input-micro valid" min="1" name="posItems[1][1].Quantity" required="required" value="50" type="text">
<input class="input-micro valid" min="1" name="posItems[2][1].Quantity" required="required" value="20" type="text">
私の投稿アクションは次のようなものです
public ActionResult Save(List posItems)
これは、両方のリストに同じ数のアイテムがある場合、または両方のリストに同じ数があると言うことができる場合にうまく機能します。
2 番目のリストのカウントが最初のリストよりも多い場合、2 番目のリストから追加の値を取得できません。
2 番目のリストが最初のリストよりも 1 項目多い次の例を参照してください。
<input class="input-micro valid" min="1" name="posItems[0][0].Quantity" required="required" value="30" type="text">
<input class="input-micro valid" min="1" name="posItems[1][0].Quantity" required="required" value="20" type="text">
<input class="input-micro valid" min="1" name="posItems[2][0].Quantity" required="required" value="20" type="text">
<input class="input-micro valid" min="1" name="posItems[0][1].Quantity" required="required" value="20" type="text">
<input class="input-micro valid" min="1" name="posItems[1][1].Quantity" required="required" value="50" type="text">
<input class="input-micro valid" min="1" name="posItems[2][1].Quantity" required="required" value="20" type="text">
<input class="input-micro valid" min="1" name="posItems[3][1].Quantity" required="required" value="114" type="text">