Dalam aplikasi MVC, penghantaran model sebagai data bentuk sebagai sebahagian daripada data borang boleh membawa cabaran, terutamanya apabila memproses keseluruhan model. Artikel ini menyelesaikan masalah ini dengan menyediakan penyelesaian yang komprehensif.
cabaran: Serialization model dalam javascript
Apabila cuba menggunakan untuk melampirkan model ke data borang dalam data bentuk dalam JavaScript, model biasanya bersiri sebagai rentetan, menghasilkan perwakilan "
".
formdata.append("model", model)
Penyelesaian: Serialization FormData [object object]
Untuk mengatasi masalah ini, sila gunakan fungsi membina FormData seperti berikut model bersiri:
Kaedah ini secara automatik akan menyusun model dan mana -mana fail yang dihasilkan olehelemen.
var formdata = new FormData($('form').get(0));
<input type="file">
di sisi pengawal, tentukan operasi untuk menerima data borang:
Jika model anda tidak termasuk atribut
$.ajax({ url: '@Url.Action("YourActionName", "YourControllerName")', type: 'POST', data: formdata, processData: false, contentType: false, });
[HttpPost] public ActionResult YourActionName(YourModelType model) { }
HttpPostedFileBase
[HttpPost] public ActionResult YourActionName(YourModelType model, HttpPostedFileBase myImage) { }
Atas ialah kandungan terperinci Bagaimanakah saya boleh lulus model kompleks dalam data borang untuk aplikasi MVC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!