将 PDF 文件下载到本地 PC 时出现问题

Problems with downloading a PDF file to local PC

我正在尝试从网络服务器下载使用 PDFsharp 创建的 PDF 文件,并将其下载到本地 PC 的下载文件夹中。我在谷歌上搜索了很多,尝试了很多但都没有成功。我可以正确创建 PDF 文件并将其保存到磁盘 - 但我不能 transfer/Download 将它保存到本地 PC 的下载文件夹。

我试过以下代码:

string filename = Server.MapPath("~\Files\Temp\file.pdf");
document.Save(filename); //generate the physical file

MemoryStream stream = new MemoryStream();
document.Save(stream, false);
Response.Clear();
Response.ContentType = "application/pdf";
Response.AddHeader("content-length", stream.Length.ToString());
Response.BinaryWrite(stream.ToArray());
Response.Flush();
stream.Close();
Response.End();

那我做错了什么?

缺少Content-Disposition

Response.AddHeader("Content-Disposition", "attachment;filename=test.pdf"); 
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Length", binfile.Length.ToString());
Response.BinaryWrite(binfile);

如果您有更新面板,则必须将按钮设置为回发触发器

  <asp:UpdatePanel runat="server">
        <Triggers>
            <asp:PostBackTrigger ControlID="btnID" />
        </Triggers>
        <ContentTemplate></ContentTemplate>
    </asp:UpdatePanel>