【发布时间】:2010-02-02 15:42:56
【问题描述】:
我有一个名为 DisplayBinaryData.aspx 的网页 - 此页面的目的是显示/下载任何单词、excel、pdf 或图像。我调用这个网页并使用查询字符串传递我的 BinaryData 实体的 id。 BinaryData 实体包含使用 asp.net fileUploadControl 上传的文件、文件名和内容类型。页面加载中的代码如下:
BinaryData obj = GetBinaryObjectById(int.Parse(Request.QueryString["id"]));
Response.Clear();
Response.BufferOutput = true;
Response.AddHeader("Content-Disposition", "attachment; filename=" + obj.FileName);
Response.ContentType = obj.FileContentType;
Response.BinaryWrite(obj.BinaryFile);
Response.Flush();
Response.Close();
Response.End();
此代码在 IE 中执行完美,但在 FireFox 中执行失败。 IE 提示用户保存或打开内容。 FireFox 也会提示用户,但对话框无法保存或打开任何内容。在谷歌浏览器中执行此操作时 - 没有对话框,它会自动开始下载内容。
我的问题:我需要此代码与 FireFox 兼容 - 有什么建议吗?
【问题讨论】: