使用 FileStreamResult 删除临时文件时,需要注意以下几点:
public IActionResult DownloadTempFile()
{
string tempFilePath = Path.Combine(Path.GetTempPath(), "tempfile.txt");
using (var stream = new FileStream(tempFilePath, FileMode.Open))
{
return new FileStreamResult(stream, "application/octet-stream")
{
FileDownloadName = "tempfile.txt"
};
}
}
public IActionResult DownloadTempFile()
{
string tempFilePath = Path.Combine(Path.GetTempPath(), "tempfile.txt");
using (var stream = new FileStream(tempFilePath, FileMode.Open))
{
var result = new FileStreamResult(stream, "application/octet-stream")
{
FileDownloadName = "tempfile.txt"
};
System.IO.File.Delete(tempFilePath);
return result;
}
}
需要注意的是,在删除临时文件之前,确保文件已经被完全下载,否则会导致下载失败。可以在返回 FileStreamResult 之后再删除文件,以确保文件已经被下载。
推荐的腾讯云相关产品:
产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云