从Web服务返回PDF

时间:2015-02-12 06:32:39

标签: asp.net web-services pdf telerik

我创建了一个Web服务,用于调用我使用Telerik Reporting Tool生成的报告。我的Web服务正在返回包含我的报告的报告查看器的URL。它实际上是PDF格式,但正如你在图片中看到的那样,扩展名是.aspx,因为它基本上是报表查看器,但我想要做的是显示没有报表查看器的PDF,这样扩展名就是.pdf而不是.aspx,关于如何实现它的任何建议?提前谢谢:)

enter image description here

1 个答案:

答案 0 :(得分:2)

我没有使用Telerik报告工具的经验,但您可以从Web服务而不是网址获取PDF文件作为byte []数组吗?然后,您可以将二进制数据写入响应流。

public void GetReport()
{
    byte[] pdfBytes = yourWebService.GetReportBytes();
    Response.OutputStream.Write(pdfBytes, 0, pdfBytes.Length);
    Response.ContentType = "application/pdf";
    Response.End();
}

这可能是您的解决方案吗?应该在ASP.NET WebForms和MVC中都有效。将您的WebService.GetReportBytes()部分替换为您必须对Telerik Reporting端进行的任何调用,以获取报告字节。