您能否帮我解决一下如何将自己的代码添加到报告查看器按钮,以便将我的数据直接导出为PDF。
我在其中一个帖子中得到了以下答案,想知道如何做到这一点。
您可以创建自己的自定义报告查看控件。控件将包含报表参数的字段和生成报表的按钮。当用户单击该按钮时,您可以在后台生成报告。您可以将报告显示为PDF。
答案 0 :(得分:3)
在我认为你有两个选择之后,要实现你的目标:
如果可以使用reportviewer控件可能是更容易维护的选项。根据您的要求,您可能需要混合两种方法的元素。
选项1
请参阅此问题提供的答案,以获得直接访问Web服务的优秀启动器解决方案
Reporting services: Get the PDF of a generated report
选项2
将ReportViewer控件的输出呈现为PDF只需将Report Viewer输出呈现为字节数组,然后将其发送到MemoryStream对象并写入输出流。下面的示例代码将获取当前在报表查看器控件中配置的报表,并直接在当前网页中生成PDF:
Warning[] warnings = null;
string[] streamids = null;
string mimeType = null;
string encoding = null;
string extension = null;
byte[] bytes = null;
bytes = ReportViewer1.ServerReport.Render("PDF", null, mimeType, encoding, extension, streamids, warnings);
System.IO.MemoryStream ms = new System.IO.MemoryStream(bytes);
Response.ContentType = "Application/pdf";
Response.BinaryWrite(ms.ToArray());
Response.End();