FormData를 통해 전체 모델을 전달하고 MVC에서 수신
ASP.NET MVC에서는 전체 모델을 전달하는 것이 바람직한 경우가 많습니다. 양식을 통해 컨트롤러에 개체를 보냅니다. 그러나 단순히 FormData에 모델을 추가하면 컨트롤러에서 문자열로 수신되어 사용할 수 없게 됩니다.
해결책:
모델을 효과적으로 전달하려면 FormData를 통해 다음과 같은 접근 방식을 사용할 수 있습니다. 채택:
모델 직렬화:
jQuery의 FormData 기능을 활용하여 모델을 직렬화합니다. 그러면 모델이 모델 속성과 파일 입력을 모두 포함할 수 있는 FormData 개체로 변환됩니다.
var formdata = new FormData($('form').get(0));
FormData 게시:
보내기 AJAX POST를 통한 FormData 객체 요청:
$.ajax({ url: '@Url.Action("YourActionName", "YourControllerName")', type: 'POST', data: formdata, processData: false, contentType: false, });
컨트롤러에서 모델 수신:
컨트롤러 작업에서 모델을 적절한 유형의 매개변수로 수락합니다.
[HttpPost] public ActionResult YourActionName(YourModelType model) { }
선택사항: 추가 처리 속성:
모델에 추가 양식 데이터에 대한 속성이 포함되어 있지 않은 경우 수동으로 추가할 수 있습니다.
formdata.append('someProperty', 'SomeValue');
다음 단계를 따르면 효과적으로 통과할 수 있습니다. FormData를 통해 모델을 생성하고 MVC 컨트롤러에서 사용 가능한 형식으로 수신합니다.
위 내용은 FormData를 통해 ASP.NET MVC 컨트롤러에 완전한 모델을 전달하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!