Ein vollständiges Modell über FormularData in ASP.NET MVC
sendenÜbertragen eines vollständigen Modellobjekts mit FormData in ASP.NET MVC und anschließend des Deserialisierens des Controllers kann komplex sein. Diese Anleitung bietet eine einfache Lösung.
client-side (javaScript)
Verwenden Sie:
, um Ihr Modell in FormData umzuwandeln:const formData = new FormData(document.querySelector('form'));
<input type="file">
Diese Methode verarbeitet effizient alle Dateien, die über
AJAX -Postanforderung
Senden Sie das FormularData mit 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 } });
serverseitig (Controller)
Definieren Sie in Ihrem Controller die Aktion, um die Daten zu erhalten:
[HttpPost] public ActionResult YourActionName(YourModelType model) { // Process the model return View(); // Or any other appropriate return }
HttpPostedFileBase
Handhabung von Dateien separat (wenn das Modell Eigenschaft fehlt):
HttpPostedFileBase
Wenn Ihr Modell keine Eigenschaft für
[HttpPost] public ActionResult YourActionName(YourModelType model, HttpPostedFileBase uploadedFile) { // Process the model and uploadedFile return View(); }
zusätzliche Eigenschaften hinzufügen:
Um Eigenschaften, die nicht in Ihrem Formular vorhanden sind
formData.append('additionalProperty', 'additionalValue');
Dieser umfassende Ansatz vereinfacht den Prozess der Übermittlung und Verarbeitung vollständiger Modelle mithilfe von FormData in ASP.NET MVC. Denken Sie daran, potenzielle Fehler im Ajax error
-Callback angemessen zu behandeln.
Das obige ist der detaillierte Inhalt vonWie kann ich ein ganzes Modell über Formdata in MVC übergeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!