目前,我已经设置了SQL Reporting Services 2005,报表管理器位于一个URL,用户可以在该URL上访问报表。那里的报告工作很好。
我的问题是尝试以C#.net 4.0代码生成这些报告,而无需任何用户交互(例如在屏幕上使用报告查看器)。我想在C#.net应用程序中生成报告并将其导出为PDF文件。报告具有必需的参数,因此我需要将参数传递给报告。我怎样才能做到这一点?
我一直在网上搜索,或者我使用了错误的关键字,或者关于此的信息不多。我很惊讶找到有关此信息的难度,因为我希望这是一个相当普遍的问题。任何和所有建议/帮助表示赞赏。
最佳答案
我没有太多使用ReportViewer的2005版本。但是您应该可以执行以下操作:
ServerReport serverReport = new ServerReport();
serverReport.ReportPath = "path/to/report";
serverReport.ReportServerCredentials = ...;
serverReport.ReportServerUrl = "http://....";
serverReport.SetParameters(...);
string mimeType;
string encoding;
string extension;
string[] streams;
Warning[] warnings;
byte[] asPdf = serverReport.Render("PDF", string.Empty, out mimeType, out encoding, out extension, out streams, out warnings);
普遍认为
ServerReport
和LocalReport
都设计为可在ReportViewer外部使用。关于c# - 从C#代码导出参数化的SSRS报告,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4442018/