FileResult未返回正确的文件类型和文件名



我有一个名为GenerateReport的ActionResult的ASP.NET MVC应用程序。我正试图返回一个字节数组来保存Excel文件。以下是一些片段:

var contentType = "application/vnd.ms-excel";
var fileName = "Statistics.xlsx";

var fileBytes = package.GetAsByteArray();
return File(fileBytes, contentType, fileName);

当我被提示保存文件时,它有时(但并不总是)会询问我想用"生成报告"做什么。它将文件命名为与ActionResult相同的名称,并且没有为其指定文件类型。我会请求保存它,它会说保存失败。我将选择"重试",它将保存良好。然后,如果我将其重命名为.xlsx,则所有数据都在那里并且是正确的。我正在使用IE9和Chrome,但我没有注意到它在Chrome中发生。不幸的是,它需要在IE9中工作。

有人知道为什么它有时不获取我的内容类型和文件名吗?

检查内容编码的响应。这可能是与这里相同的问题PHP文件服务脚本:不可靠的下载?

相关内容

  • 没有找到相关文章

最新更新