这个问题在这里已有答案:
我正在尝试获取大小为100MB的文件并返回流结果。我必须等待“另存为...”窗口大约1分钟,直到它在服务器端完全下载,然后选择文件名并接受后 - 它可以非常快速地保存而不显示进度。但是当我从文件系统返回一个文件作为FilePathResult时,它运行良好。
例:
public async Task<FileResult> GetFile()
{
HttpClient client = new HttpClient();
var response = await client.GetAsync("https://speed.hetzner.de/1GB.bin");
var stream = await response.Content.ReadAsStreamAsync();
return File(stream, "application/zip");
}
我该怎么做才能立即显示“另存为...”窗口,然后查看实际下载了多少字节?
请查看此问题以获得解决方案:C# Stream Response from 3rd party, minimal buffering