Избегайте использования [FromBody]
, он попросит ModelBinder прочитать всю полезную нагрузку, а затем сериализовать ее как экземпляр MyPoco
.
. Для достижения ваших целей вы можете объявить свой метод действия следующим образом:
[HttpPost("[action]")]
public IActionResult Test(MyPoco myPoco,IFormFile myfile){
// now you get the myfile file and the myPoco
}
, а затем отправьте поля с полными именами:
<form id="createForm" method="post" enctype="multipart/form-data" action="/api/SampleData/Test">
<input name="MyPoco.Name" type="text" bind="@model.Name" />
<input name="MyPoco.Id" type="text" bind="@model.Id" />
<input name="myfile" type="file" />
<button type="submit">submit this form</button>
</form>
снимок экрана с демонстрацией: