Artikel ini menyediakan penyelesaian lengkap untuk menyelesaikan masalah biasa yang menghantar model lengkap yang ditetapkan melalui FormData dan menggunakannya sebagai akses model dalam pengawal.
Kaedah tradisional adalah untuk menambah objek model sebagai rentetan kepada formdata, yang akan menyebabkan permintaan.Form ditetapkan dalam pengawal untuk menerima "Objek Objek]". Untuk mengatasi had ini, kaedah yang lebih baik boleh digunakan:
Gunakan Model Serialized FormData ()
Gunakan Ajax untuk melepaskan data
var formdata = new FormData($('form').get(0));
menerima model dalam pengawal
$.ajax({ url: '@Url.Action("YourActionName", "YourControllerName")', type: 'POST', data: formdata, processData: false, contentType: false, });
atau, jika model anda tidak termasuk httppostedfilebase, pertimbangkan pengubahsuaian berikut:
[HttpPost] public ActionResult YourActionName(YourModelType model) { }
termasuk atribut tambahan
[HttpPost] public ActionResult YourActionName(YourModelType model, HttpPostedFileBase myImage) { }
Melalui teknologi ini, anda boleh menambah data model dengan lancar ke FormData, supaya ia mudah untuk menghantarnya sebagai jenis model dalam kaedah operasi pengawal.
formdata.append('someProperty', 'SomeValue');
Atas ialah kandungan terperinci Bagaimana untuk menambahkan model kepada FormData dan menerimanya sebagai model dalam pengawal MVC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!