1

我的 MVC 应用程序有一个简单的文件下载控制器操作,用于下载文件。

这是代码:

public ActionResult Download(string fileId, string filename)
{
    //var fullFilePath = FileService.GetFullPath(fileId); // get the path to file
    var fullFilePath = fileId;
    return File(fullFilePath, "application/octet-stream", filename);
}

我可以成功下载/保存文件,但似乎无法让 Firefox 显示文件下载进度。所有其他浏览器都会显示文件下载进度。

有谁知道如何让 Mozilla Firefox 显示文件下载进度?

4

2 回答 2

2

您需要添加Content-Length到标题中,以便浏览器可以计算。

HttpContext.Response.AddHeader("Content-Length", file.Length.ToString());
于 2012-06-18T16:59:45.593 回答
2

您需要发送一个Content-Length标头,以字节为单位告知文件的大小,否则浏览器不知道文件有多大,也无法显示进度条。

如果您传递内容长度,则它可以在下载时显示进度条。

于 2012-06-18T16:59:55.837 回答