Я пытался следовать этому примеру в документации, чтобы разрешить загрузку файла на мой контроллер, он действительно ударил по моему действию, но всегда имеет значение null.
Моя модель просмотра
<form method="post" enctype="multipart/form-data" asp-controller="Data" asp-action="ImportAdditionalCodes">
<div class="form-group">
<div class="col-md-10">
<p>Upload import data:</p>
<input type="file" name="files" >
</div>
</div>
<div class="form-group">
<div class="col-md-10">
<input type="submit" value="Upload">
<button type="button" id="btnCancelUploadData">Cancel</button>
</div>
</div>
</form>
Действие My Controller
[HttpPost]
public async Task<IActionResult> ImportAdditionalCodes(IFormFile file)
{
//file is always null here!!!
if (file?.Length > 0)
{
JsonSerializer js = new JsonSerializer();
using (MemoryStream ms = new MemoryStream())
{
await file.CopyToAsync(ms);
using (StreamReader streamReader = new StreamReader(ms))
{
CommodityAdditionalCodeTypeDto[] codes= (CommodityAdditionalCodeTypeDto[]) js.Deserialize(streamReader, typeof(CommodityAdditionalCodeTypeDto[]));
}
}
}
return null;
}