Tag: response.write

发送Excel文件给使用Chrome和IE但不使用Firefox的用户(获取没有扩展名的文件)

我使用OpenXML库生成和excel文件并将其发送给用户。 它与Chrome和IE工作得很好,但是当我用Firefox试了一下,我遇到了一个问题。 当使用FF保存文件时,我得到一个没有扩展名的文件当使用FF打开文件时,它像一个魅力:( 我正在使用以下function将stream发送给用户。 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下载对话框识别文件,如截图: 现在完成下载: