Я хочу отправить свой файл по имени, я думал, что мне нужен объект для этого
, но у меня проблемы с интеграцией объекта с формданными
, но у меня возникают проблемы с интеграциейобъект с формданными
$("#form").submit(function (e) {
e.preventDefault();
//var formData = new FormData($('#form')[0]);
console.log(formData);
var formData = new FormData();
var photos = new Array();
var t = { inputID: 1, photo: $("#photos1")[0].files[0] };
var q = { inputID: 2, photo: $("#photos2")[0].files[0] };
var g = { inputID: 3, photo: $("#photos3")[0].files[0] };
formData.append("Photos", JSON.stringify(t));
formData.append("Photos", JSON.stringify(q));
formData.append("Photos", JSON.stringify(g));
formData.append("name", $("#name").val());
formData.append("id", $("#id").val());
$.ajax({
type: 'post',
url: '/home/Upload',
success: function (data) {
console.log(data);
},
error: function (err) {
console.log(err);
},
data: formData,
cache: false,
contentType: false,
processData: false
})
})
работал правильно до именования
, но теперь свойство photos имеет значение null
public class UploadModel
{
public UploadModel()
{
Photos = new List<FileModel>();
}
public int id { get; set; }
public string name { get; set; }
public List<FileModel> Photos { get; set; }
}
public class FileModel
{
public int inputID { get; set; }
public HttpPostedFileBase photo { get; set; }
}
Action
[HttpPost]
public JsonResult Upload(UploadModel uploadModel)
{
return Json(uploadModel, JsonRequestBehavior.AllowGet);
}