如何让Mozilla Firefox显示文件下载进度

时间:2012-06-18 16:56:27

标签: c# asp.net-mvc firefox

我的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显示文件下载进度?

2 个答案:

答案 0 :(得分:2)

您需要在标头中添加Content-Length,以便浏览器可以计算出来。

HttpContext.Response.AddHeader("Content-Length", file.Length.ToString());

答案 1 :(得分:2)

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

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