Тип содержимого файла не принимается во время загрузки - PullRequest
0 голосов
/ 14 октября 2019

Тип содержимого файла не передается в контроллер Тип содержимого, отображаемый в представлении, но не передается в контроллер Asp.net core 3.0, EF core, используется API-контроллер, Blazor Server сторона

Просмотр кода

async Task UploadFile()
  {
    try
    {
      var form = new MultipartFormDataContent();
      var content = new StreamContent(file.Data);
      content.Headers.ContentDisposition = new System.Net.Http.Headers.ContentDispositionHeaderValue("form-data")
      {
        Name = "files",
        FileName = file.Name

      };
      form.Add(content);
      var url = UriHelper.ToAbsoluteUri("api/Document/Upload");
      var response = await HttpClient.PostAsync(url.ToString(), form);
      this.OnInitializedAsync();
    }
    catch (Exception ex)
    {
      throw ex;
    }

  }

Код контроллера

    [HttpPost()]
    public async Task<IActionResult> Upload(List<IFormFile> files)
    {
      long size = files.Sum(f => f.Length);
      byte[] bytes;
      IFormFile fileUpload = files.FirstOrDefault();
      using (BinaryReader br = new BinaryReader(fileUpload.OpenReadStream()))
      {
        bytes = br.ReadBytes(Convert.ToInt32(fileUpload.Length));
      }
      using (var dataContext = new LaborgDbContext())
      {
        var entity = new FileUpload
        {
          DocumentName = fileUpload.FileName,
          ContentType = fileUpload.ContentType,
          FileByte = bytes,
        };
        dataContext.Add(entity);
        return Ok(dataContext.SaveChanges());
}
...