Mengemukakan model penuh melalui FormData dalam asp.net mvc
menghantar objek model lengkap menggunakan FormData dalam ASP.NET MVC dan seterusnya menafikannya dalam pengawal boleh menjadi kompleks. Panduan ini menawarkan penyelesaian mudah.
client-side (javascript)
untuk menukar model anda menjadi formdata, gunakan:
const formData = new FormData(document.querySelector('form'));
elemen. <input type="file">
AJAX Post Request
Hantar FormData menggunakan Ajax:
$.ajax({ url: '@Url.Action("YourActionName", "YourControllerName")', type: 'POST', data: formData, processData: false, contentType: false, success: function(response) { // Handle successful response }, error: function(xhr, status, error) { // Handle errors } });
Server-side (Controller)
Di dalam pengawal anda, tentukan tindakan untuk menerima data:
[HttpPost] public ActionResult YourActionName(YourModelType model) { // Process the model return View(); // Or any other appropriate return }
mengendalikan fail secara berasingan (jika model tidak mempunyai harta): HttpPostedFileBase
, mengendalikan fail muat naik secara berasingan: HttpPostedFileBase
[HttpPost] public ActionResult YourActionName(YourModelType model, HttpPostedFileBase uploadedFile) { // Process the model and uploadedFile return View(); }
Menambah sifat tambahan:
untuk memasukkan sifat -sifat yang tidak ada dalam bentuk anda, masukkannya ke FormData:
formData.append('additionalProperty', 'additionalValue');
. error
Atas ialah kandungan terperinci Bagaimana untuk meluluskan keseluruhan model melalui Formdata di MVC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!