2017-12-20 21 views
0

複雑なモデルのフォームポストに関する質問があります。私のモデルにはサブクラスがあり、IEnumerables:ASP.NETコアMVCのコントローラへの複雑なモデルのフォームポスト

私のビューから自分のコントローラに入力する最も良い方法は何ですか? Modelbinderはこれにもバインドできますか?

+0

MVC6のようなものはありません; – Tseng

+0

これは* real *フォームの投稿の場合、HTMLフォームの実際のデータデザインはこれよりも面白いです。 - しかし、ええ、モデルのバインダーはここで問題になることはありません。 – poke

答えて

0

Modelbinderはこれにもバインドできますか?

はい、これは、このクラス構造よりもはるかに複雑なものを行うことができます。

私のビューから自分のコントローラへの入力を得る最も良い方法は何ですか?

投稿はjsonと同じです。

例:

あなたはこの

public IActionResult Post([FromBody]MyViewModel model) 

のようなコントローラメソッドにこのJSON

{"singleInteger":1,"multipleInts":[1,2,3],"assembledClass":[{"quantity":1,"type":2}],"multipleStrings":["one","two"]} 

を投稿できるそしてそれは、この

ようMyViewModelのインスタンスに変換されます
var model = new MyViewModel 
{ 
    SingleInteger = 1, 
    MultipleInts = new List<int>(){ 1,2,3 }, 
    AssembledClass = new List<MySubclass>{ 
     new MySubclass 
     { 
      Quantity = 1, 
      Type = 2 
     } 
    }, 
    MultipleStrings = new List<string>(){ "one", "two"} 
}; 
関連する問題