将pdf流式传输到浏览器,怎么做?

时间:2013-04-24 15:14:30

标签: c# asp.net pdf

任何人都可以告诉我如何将pdf流式传输到新的标签浏览器?我只是在内存上有pdf流,当我点击链接时,我想在新的标签页或窗口浏览器中显示PDF。我怎么能做到这一点?提前谢谢!

我有这个链接:

<a id="hrefPdf" runat="server" href="#" target="_blank">
    <asp:Literal ID="PdfName" runat="server"></asp:Literal>
</a>

在上面的代码中,我在onload事件中有这个:

Stream pdf= getPdf

if (pdf != null)
{
    SetLinkPDF(pdf);
}

private void SetLinkPDF(IFile pdf)
{
    hrefPdf.href = "MyPDF to the Browser"
    PdfName.Text = pdf.PdfName;      
}

我必须处理流pdf(IFile包含PDF的名称,流,元数据等)

我可以做什么来处理这个以及当我点击在新浏览器上显示流时?

1 个答案:

答案 0 :(得分:1)

Response.Clear();

Response.ClearHeaders();

Response.ClearContent();

Response.AddHeader("Content-Disposition", "attachment; filename=" + file.Name);

Response.AddHeader("Content-Length", file.Length.ToString());

Response.ContentType = "application/pdf";

Response.Flush();

Response.TransmitFile(file.FullName);

Response.End();