Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使asp.net中的报表查看器直接以pdf格式打开?_C#_Asp.net_Pdf_Reportviewer - Fatal编程技术网

C# 如何使asp.net中的报表查看器直接以pdf格式打开?

C# 如何使asp.net中的报表查看器直接以pdf格式打开?,c#,asp.net,pdf,reportviewer,C#,Asp.net,Pdf,Reportviewer,我有一个ReportViewer,这是工作100%,但我需要它在PDF直接打开 还有一个代码示例,我将reportviewer与数据绑定在一起 ReportViewer1.ProcessingMode = ProcessingMode.Local; ReportDataSource source = new ReportDataSource("dsGetTrnsactions", dt); ReportViewer1.LocalReport.DataSources.Clear(); Report

我有一个ReportViewer,这是工作100%,但我需要它在PDF直接打开

还有一个代码示例,我将reportviewer与数据绑定在一起

ReportViewer1.ProcessingMode = ProcessingMode.Local;
ReportDataSource source = new ReportDataSource("dsGetTrnsactions", dt);
ReportViewer1.LocalReport.DataSources.Clear();
ReportViewer1.LocalReport.DataSources.Add(source);
ReportViewer1.DataBind();
ReportViewer1.LocalReport.Refresh();

您需要获取表示PDF文件的字节数组,然后需要使用PDF文件打开一个新窗口。试试这个:

byte[] file = ReportViewer1.LocalReport.Render(some parameters);

Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "inline;filename=Test.pdf");
Response.Buffer = true;
Response.Clear();
Response.BinaryWrite(file);
Response.End();