MVC-前台调用后台action 传递upload file 参数问题
?
在后臺獲取upload file 數量的時候發現count一直為0,經檢查發現了問題 ,代碼如下:
?
前臺:
var data = $("#DetailForm").serialize();
$.ajax({
url: '@Url.Action("SaveRequest", "RegistrationRequest")',
type: "POST",
dataType: "JSON",
data: data,
cache: false,
processData: false,
success: function (result) {
window.scrollTo(0, 0);
utility.hideMask();
FormSaveSuccess(result);
}
});
?
后臺:
[HttpPost]
public ActionResult SaveRequest(DetailModel model)
{
? ?if (ModelState.IsValid)
? ?{
? ? ?if (model.Type == Codes.VT.ToString() || model.Type == Codes.NT.ToString())
? ? ?{
? ? ?model.DocumentsList = Utility.BuildDocumentModel(Request.Files, model.DocumentSearchCriteria.ModuleCode, ?"", "", ?model.DocumentSearchCriteria.FunctionId);
? ? ?if (model.DocumentsList.Count == 0)
? ? {
? ? ? ?return Json(new { HasError = true, ErrorMessage = MessageResources._NoUploadFile });
? ? }
? }
}
}
Request.Files 里文件count ==0.
解決這個問題只需要在前臺調用action腳本里加上 屬性?mimeType: "mutipart/form-data",
?
$.ajax({
url: '@Url.Action("SaveRequest", "RegistrationRequest")',
type: "POST",
dataType: "JSON",
data:?new FormData(this),
mimeType: "mutipart/form-data",
cache: false,
processData: false,
success: function (result) {
window.scrollTo(0, 0);
utility.hideMask();
FormSaveSuccess(result);
}
});
轉載于:https://www.cnblogs.com/wwzhang/p/4944860.html
總結
以上是生活随笔為你收集整理的MVC-前台调用后台action 传递upload file 参数问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 求团结就是力量的歌词。
- 下一篇: 如何将Java源代码文件的编码从GBK转