MultipartFormDataStreamProvider против MultipartFileStreamProvider - Как сохранить исходное имя файла в выводе? - PullRequest
0 голосов
/ 04 марта 2020

У меня есть API без внешнего интерфейса, который будет принимать файлы определенного типа и сохранять их локально. Я работаю с Microsoft.AspNet.WebApi.Core 5.2.3

Внутри моего действия у меня есть:

public async Task<HttpResponseMessage> ProcessFile()
{
  if (!Request.Content.IsMimeMultipartContent()) // error out ...

  var provider = new MultipartFileStreamProvider(@"some\local\path");
  await Request.Content.ReadAsMultipartAsync(provider); // File with random name is written to local path
  // provider.FileData contains a collection of MultipartFileData which has the original file name, and the local path to the file
}
  1. Есть ли преимущество использования MultipartFormDataStreamProvider над MultipartFileStreamProvider?
  2. В любой ситуации кажется, что при вызове Request.Content.ReadAsMultipartAsync() создается локальный файл по пути provider root ... но этот файл имеет произвольное имя файла. Как я могу однозначно идентифицировать этот файл и вернуть ему ie исходное имя исходного файла?
...