我在我的项目中遇到了一个问题。我的页面中有两个按钮,一个用于下载 pdf,一个用于下载 zip。这些下载适用于除 IE8 之外的所有浏览器(IE9 有效)。
在 IE8 中,有一条消息说“为了帮助保护您的安全,...”。当我单击“下载此文件”时,浏览器刷新页面,我丢失了我所做的一切。但是当我再次尝试下载文件时,浏览器让我这样做。
有一个截图:
这是我的代码:
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
if (IsPostBack)
return;
if (Request.QueryString["outputpdf"] == "1" && !string.IsNullOrEmpty(PdfReportFilePath))
{
OutputPdfFile(PdfReportFilePath);
PdfReportFilePath = string.Empty;
Response.End();
}
if (Request.QueryString["outputexport"] == "1" && !string.IsNullOrEmpty(RxMapSession.ExportedFilePath))
{
OutputExport(RxMapSession.ExportedFilePath);
RxMapSession.ExportedFilePath = RxMapSession.ExportedFileName = string.Empty;
Response.End();
}
initChart();
}
private void OutputExport(string exportedFilePath)
{
Response.ContentType = "application/zip";
Response.AppendHeader("Content-Disposition", "attachment; filename=" + Path.GetFileName(exportedFilePath));
Response.WriteFile(exportedFilePath);
}
private void OutputPdfFile(string reportFullPath)
{
string fileName = reportFullPath.Split('\\').Last();
Response.ContentType = "application/pdf";
Response.AppendHeader("Content-Disposition", "attachment; filename=" + fileName);
Response.WriteFile(reportFullPath);
Response.End();
}
你知道为什么我在 IE8 上会出现这个问题吗?