そのため、AJAX を介してコントローラー メソッドに GET を実行し、JSON を返します。JSON を返すことは問題ありませんが、パラメーターを送信して単純なオブジェクトを構築することはできません。結果はそのオブジェクトのデフォルト値になります!
何か案は?
モデル:
public class CoreViewModel
{
public int Id {get; set;}
public int ExtensionId {get;set;}
public string Zip {get; set;}
public int ShopId {get; set;}
}
コントローラ:
public ActionResult GetDetails(CoreViewModel model)
{
return Json(new DetailsViewModel(model), JsonRequestBehavior.AllowGet);
}
アヤックス:
$.ajax({
type: "GET",
url: serviceUrl + "GetDetails/",
contentType: "application/json; charset=utf-8",
crossDomain: false,
cache: false,
dataType: 'json',
data: '{"Zip":"@Model.Zip","ShopId":@Model.ShopId,"ExtensionId":@Model.ExtensionId,"Id":@Model.Id}',
success: function(data) {
};
},
.. ..