HttpContent.ReadAsMultipartAsync оставляет временный файл
Я начинаю зацикливаться на этом, что обычно означает, что я упускаю что-то очевидное.
У меня есть следующий код в моем контроллере.NET MVC:
var provider = new CustomMultipartFileStreamProvider("prefix", GetRepositoryTempFolder());
await request.Content.ReadAsMultipartAsync(provider);
CustomMultipartFileStreamProvider наследуется от MultipartFileStreamProvider, переопределяет метод GetLocalFileName и возвращает соответствующее имя файла для данного заголовка ContentDisposition. Обрабатываемый HttpContent обычно представляет собой PDF-файл и небольшой компонент настроек JSON.
Все работает прекрасно, даже если разобрать, извлечь и сохранить детали в ожидаемом месте. Однако после анализа я получаю временный файл, оставленный в моей папке C:\Windows\Temp. Файл имеет случайно сгенерированное имя (например, zf0hk2h4.ks2). Он имеет тот же размер и дату создания, что и часть PDF, проанализированная и сохраненная ReadAsMultipartAsync.
Я полагаю, что ReadAsMultipartAsync использует этот временный файл во время анализа и оставляет его позади. Кто-нибудь еще испытывал это? В любом случае я могу помешать ReadAsMultipartAsync оставить этот временный файл и засорить временную папку Windows?
1 ответ
Мои извенения; Я что-то упустил. Файл был перемещен после обработки. Это неверный вопрос; В ReadAsMultipartAsync нет ничего плохого.