Person と ViewModelPerson の 2 つのクラスがあります。ViewModelPerson のコンストラクターは、"Person" と 2 つの int の 3 つの引数を取得します。
個人の詳細を取得する別の JS ファイルがあり、その詳細を、単一の「ViewModelPerson」引数を取得するコントローラーの関数に送信する必要があります。
JSで「ViewModelPerson」を作成してajaxでコントローラーに渡すにはどうすればよいですか?
Person と ViewModelPerson の 2 つのクラスがあります。ViewModelPerson のコンストラクターは、"Person" と 2 つの int の 3 つの引数を取得します。
個人の詳細を取得する別の JS ファイルがあり、その詳細を、単一の「ViewModelPerson」引数を取得するコントローラーの関数に送信する必要があります。
JSで「ViewModelPerson」を作成してajaxでコントローラーに渡すにはどうすればよいですか?
カスタム モデル バインダーを使用しているようです。
IModelBinder (PersonViewModelCustomBinder と呼びます) を実装してカスタム モデル バインダーを構築します。これは、from コレクションから人のプロパティを読み込んで Person オブジェクトを作成し、それを使用して PersonViewModel を作成します。
コントローラ アクションを PersonViewModelCustomBinder で装飾し、..
public ActionResult PersonSave([ModelBinder(typeof(PersonViewModelCustomBinder))] PersonViewModel pvm)
JavaScript 関数から、$.ajax を使用してデータをコントローラー アクションにポストします。