C# ASP.NET-下载文件&;在浏览器上显示
我的任务非常简单,单击按钮时,我想在浏览器上显示生成的PDF,但同时在客户端计算机上下载它 我做了两个功能,一个用于下载,另一个用于在浏览器上显示。当我单独运行它们时,它们就像一个符咒一样工作,但当我在按钮上将它们集合在一起时,只单击称为“第一个”的按钮,而另一个按钮则不起任何作用 下面是下载该文件的代码C# ASP.NET-下载文件&;在浏览器上显示,c#,asp.net,webpage,C#,Asp.net,Webpage,我的任务非常简单,单击按钮时,我想在浏览器上显示生成的PDF,但同时在客户端计算机上下载它 我做了两个功能,一个用于下载,另一个用于在浏览器上显示。当我单独运行它们时,它们就像一个符咒一样工作,但当我在按钮上将它们集合在一起时,只单击称为“第一个”的按钮,而另一个按钮则不起任何作用 下面是下载该文件的代码 _page.Response.Clear(); _page.Response.AddHeader("Content-Disposition", "attachment;
_page.Response.Clear();
_page.Response.AddHeader("Content-Disposition", "attachment; filename=payments.xls");
//Download the file and prompt the user to save
_page.Response.BinaryWrite(data);
_page.Response.End();
下面是要在浏览器上显示的代码
_page.Response.Clear();
_page.Response.ContentType = "application/pdf";
_page.Response.OutputStream.Write(_datastrem.GetBuffer(), 0, _datastrem.GetBuffer().Length);
_page.Response.Flush();
**我还应该提到,我想在回发时完成所有这些操作。您并没有完全显示代码,但从您描述的内容来看,这是行不通的:每个HTTP响应只能执行一个操作。您可以推送文件以供下载(
内容处置
)或在浏览器中显示文件
如果您想同时执行这两项操作,则必须使用显示文件的中间页面,然后(例如使用JavaScript)执行文件下载。您没有完全显示您的代码,但根据您的描述,我可以说这不起作用:每个HTTP响应只能执行一个操作。您可以推送文件以供下载(
内容处置
)或在浏览器中显示文件
如果要同时执行这两项操作,则必须使用一个显示文件的中间页面,然后(例如使用JavaScript)执行文件下载。如何准确地调用这些页面?您是否尝试过在浏览器中显示内容并使用iframe向您的客户提供一个文件?很抱歉,我已经用代码更新了问题。您如何确切地称之为这些?您是否尝试过在浏览器中显示内容并使用iframe向您的客户端提供文件?很抱歉,我已经用代码更新了问题。您能否告诉我如何通过javascript下载文件,因为brower将显示pdf,所以我如何调用下载功能。在iframe中的HTML文档中显示pdf,例如,我不想打开任何弹出窗口或任何我想在同一页上显示pdf的内容。你能告诉我如何通过javascript下载文件吗,因为brower将显示pdf,所以我如何调用下载函数。在iframe中的HTML文档中显示pdf,例如,我不想打开任何弹出窗口或任何我想在同一页上显示pdf的内容。