在更新面板中显示带有字节流的pdf

本文关键字:字节流 pdf 显示 更新 | 更新日期: 2023-09-27 17:57:59

我想在更新面板中将字节流中的pfd发送给用户,但我无法使其工作。

            Print print = new Print();
            byte[] pdfTransport;
            pdfTransport = //get the byte array
            Response.ClearContent();
            Response.ClearHeaders();
            Response.ContentType = "application/pdf";
            Response.AddHeader("Content-Disposition", "attachment; filename=Tpt" + lblTransportNr.Text + DateTime.Now.ToString().Replace(",", "") + ".pdf");
            Response.BinaryWrite(pdfTransport);
            string value;
            System.Text.UTF8Encoding enc = new System.Text.UTF8Encoding();
            value = enc.GetString(pdfTransport);
            Response.End();
            Response.Flush();
            Response.Clear();

如果我使用这个,它在.aspx页面中不需要更新面板就可以工作。当我把页面放在更新面板中时,我会得到一个解析错误。有人有办法避免或解决这个问题吗?Thx。

在更新面板中显示带有字节流的pdf

实际上,您不能通过AJAX请求发送字节流,这只是技术限制。UpdatePanel使用异步请求(AJAX)。

不明白你想要什么。。。。你想看1吗。网页中的pdf内容,或2。人类可读格式的pdf二进制文件?

如果1.:不要使用更新面板。。。而是pdf url 的iframe

如果2.:不要写入响应,在更新面板中设置标签的Text属性