Как я могу отправить свои файлы с моего javascript (файлы через реагировать dropzone) на мой основной api asp.net?
Я использую аксиомы и у меня что-то вроде этого
var data = new FormData();
data.append('folderName', "4141515");
data.append('file', files[0].fileObject); //dropzone wraps the fileobject
axiosInstance2.post("/inventories/ImportImage", data)
[HttpPost("ImportImage")]
public async Task<IActionResult> ImportImage(IFormFile file, string folderName){}
Это работает, но заполняется только «файл», переменная «имя папки» пуста.
Пытался вставить в модель, но ничего не вышло (код статуса 400)
public class Test
{
public IFormFile file { get; set; }
public string folderName { get; set; }
}
Кроме того, FormData - единственный способ отправить его на сервер?
Редактировать
Похоже, мне нужно использовать [FromForm] Test test
Какая у вас версия ядра asp.net? Был ли у вас [ApiController] на Controller? Как и в моем тесте, это связано с [ApiController], и здесь есть два варианта: один - удалить [ApiController], а другой - добавить [FromForm], чтобы указать источник связывания для folderName, например ImportImage(IFormFile file, [FromForm]string folderName).
Использование модели является правильным, я также должен убедиться, что она попадает в правильный маршрут, и что вызывает код 400?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


С контроллером api ядра .net вы должны использовать тег [FromBody] перед параметром и изменить параметр на тип Test, он привяжет значения к классу, который вы можете использовать. Нравится:
public async Task ImportImage([FromBody] Test your_values_here){}
Не знаю, что специально делают axios. Но для обычного сообщения jQuery с FormData ваш код должен работать (будет заполнено имя папки)