Здравствуйте!
У меня появилась проблема с передачей данных на сервер. Ситуация:
Мне нужно закинуть на сервер коллекцию неких объектов, так же каждый объект имеет изображение. Вот код:
let packagesForm = new FormData();
for (let i = 0; i < packages.length; i++) {
packagesForm.append('Image', packages[i].Image);
packagesForm.append('MeasureUnit', packages[i].MeasureUnit);
packagesForm.append('VolumeUnit', packages[i].VolumeUnit);
packagesForm.append('Volume', packages[i].Volume);
packagesForm.append('Price', packages[i].Price);
packagesForm.append('ProductId', packages[i].ProductId);
}
$.ajax({
url: '@Url.Action("Create", "Package")',
method: 'post',
data: packagesForm,
contentType: false,
processData: false,
success: (response) => {
},
error: (response) => {
}
})
Тут я получаю из предыдущего запроса ответом id куда сиё дело привязывать и дальше пытаюсь отправить список объектов на сервер.
Вот экшен, куда это всё передается:
[HttpPost]
public async Task<IActionResult> Create(List<CreatePackageHttpPostModel> vm)
{
return Ok(new { success = true });
}
Проблема в том, что на сервер заходит пустой список. Юзать FormData обязательно, т.к. есть загрузка изображения. Как тут делать? Я что-то упустил, но не могу понять что именно