解決策:
この問題を解決するには、forループ内の配列の制御を手動で生成する必要があります。これにより、コントロールのコントロールの正しい名前が保証されます。
修正コード: ビューの
:コントローラーの
:その他の注意事項:
ビュー内のアイテムを追加して削除する場合は、
<code class="language-csharp">@using (Html.BeginForm("Save", "ConnectBatchProduct", FormMethod.Post)) { .... <table> .... @for(int i = 0; i < Model.BatchProducts.Count; i++) { <tr> <td>@Html.TextBoxFor(m => m.BatchProducts[i].Quantity)</td> <td>@Html.TextBoxFor(m => m.BatchProducts[i].BatchName)</td> <td> <!-- 包含隐藏输入以跟踪项目索引 --> <a></code>補助メソッドまたはHTMLテンプレートを使用できます。たとえば、新しいプロジェクトを追加するためのテンプレートを作成できます。
その後、JavaScriptを使用して、新しいプロジェクトをフォームに動的に追加できます。
<code class="language-csharp">public ActionResult Save(ConnectBatchProductViewModel model) { .... }</code>
以上が提出後、なぜ私のASP.NET MVCフォームアレイプロパティはヌルですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。