MVC 4 のリストへのモデルのバインド
MVC 4 のビューに項目の IList をバインドしようとすると、問題が発生する可能性がありますHttpPost中。この課題に対処するには、次のパターンを検討してください:
ViewModel:
項目の IList を含む ViewModel を作成します:
public class MyViewModel { public List<Person> Persons{get;set;} }
View:
ビューで、IList を反復処理します。各プロパティのフォーム入力を生成します:
@model MyViewModel @for( int i = 0; i < Model.Persons.Count(); ++i) { @Html.HiddenFor(m => m.Persons[i].PersonId) @Html.EditorFor(m => m.Persons[i].FirstName) @Html.EditorFor(m => m.Persons[i].LastName) }
Action:
アクション メソッドで、投稿された MyViewModel を処理します。 object:
[HttpPost]public ViewResult(MyViewModel vm) { ... }
考慮事項:
@for( int i = 0; i < Model.Persons.Count(); ++i) { @Html.Hidden($"Persons[{i}].PersonId", Model.Persons[i].PersonId) @Html.Editor($"Persons[{i}].FirstName", Model.Persons[i].FirstName) @Html.Editor($"Persons[{i}].LastName", Model.Persons[i].LastName) }
以上がHttpPost 中に ASP.NET MVC 4 のビューにリストを効果的にバインドするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。