我正在使用 OpenXML 库生成和 excel 文件并将其发送给用户。它在 Chrome 和 IE 上运行得很好,但是当我用 Firefox 尝试它时,我遇到了一个问题。
当使用 FF 保存文件时,我得到一个没有扩展名的文件当使用 FF 打开文件时,它就像一个魅力:(
我正在使用以下函数将流发送给用户。
public static void SendToClient(Byte[] stream, string fileName)
{
HttpContext.Current.Response.ClearContent();
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
HttpContext.Current.Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
HttpContext.Current.Response.BinaryWrite(stream);
HttpContext.Current.Response.AddHeader("content-disposition", "attachment; filename=" + fileName + ".xlsx");
HttpContext.Current.Response.AddHeader("content-length", stream.LongLength.ToString());
HttpContext.Current.Response.End();
}
并这样称呼它:
_ExcelReports.SendToClient(excelUtil.ExportToExcel(excelWorkBook), projectName + " Resources");
更奇怪的是,FF 下载对话框可以识别文件,如屏幕截图所示:
现在完成下载: