更新:仅在 Chrome 中失败,这在 IE10 和 FF 中都有效。
我创建了一个 SSRS 报表并将其发布到报表服务器。我有一个带有报表查看器的单独 Web 应用程序,它查看报表服务器以查看数据。当我将服务器报告转换为 PDF 时,报告显示得很好,但是速度很慢。我只想按原样显示报告,但这样做时我只看到一个空白页。这是我的代码。我使用了HERE的 SsrsReportInfo 类。请让我知道我错过了什么。
private void OpenServerReport()
{
//Create SSRS Parameters
var reportInfo = new SsrsReportInfo("TestReport", "http://localhost/ReportServer", @"/ReportTesting2/MainReport");
//Initialize ServerReport
ReportViewer1.ServerReport.ReportPath = reportInfo.ReportPath;
ReportViewer1.ServerReport.ReportServerUrl = new Uri(reportInfo.ReportServerUrl);
if (reportInfo.Parameters != null)
{
ReportViewer1.ServerReport.SetParameters(reportInfo.Parameters);
}
ReportViewer1.ServerReport.Refresh();
//Automatically display as PDF
//var bytes = ReportViewer1.ServerReport.Render("PDF");
//Response.Buffer = true;
//Response.Clear();
//Response.ClearContent();
//Response.ClearHeaders();
//Response.ContentType = "application/pdf";
//Response.BinaryWrite(bytes);
//Response.End();
}
PS 这与报表管理器中的功能相同。当我从报告管理器(localhost/reports/myfolder/reportname)中选择报告时,我看到一个空白页,但我可以单击保存按钮并将其保存为 PDF 并查看实际报告。报表服务器 (localhost/ReportServer/myfolder/reportname) 会显示报表数据。