asp.net-mvc – 在MVC Action中将SSRS报告导出为PDF

前端之家收集整理的这篇文章主要介绍了asp.net-mvc – 在MVC Action中将SSRS报告导出为PDF前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是的,我想将SSRS报告导出到PDF并将其从我的操作中返回,我没有任何Report Viewer.请告诉我如何实现这一点.到目前为止我做到了这一点
  1. public void sqlServerReport()
  2. {
  3. NetworkCredential nwc = new NetworkCredential("username","password","domain");
  4. WebClient client = new WebClient();
  5. client.Credentials = nwc;
  6. string reportURL = "http://servername/ReportServer/reportfolder/StateReport&rs:Command=Render&rs:Format=PDF";
  7. Byte[] pageData = client.DownloadData(reportURL);
  8. Response.ContentType = "application/pdf";
  9. Response.AddHeader("Content-Disposition","attachment; filename=" + DateTime.Now);
  10. Response.BinaryWrite(pageData);
  11. Response.Flush();
  12. Response.End();
  13. }

上面的代码抛出异常

  1. "The remote server returned an error: (401) Unauthorized."

我的问题是
1)我正朝着正确的方向前进吗?
2)有没有更好的替代方案来实现这一目标?

解决方法

我纠正了上面的代码,现在它的工作
  1. public ActionResult GetPdfReport()
  2. {
  3. NetworkCredential nwc = new NetworkCredential("username","password");
  4. WebClient client = new WebClient();
  5. client.Credentials = nwc;
  6. string reportURL = "http://someIp/ReportServer/?%2fReportProjectName/ReportName&rs:Command=Render&rs:Format=PDF";
  7. return File(client.DownloadData(reportURL),"application/pdf");
  8. }

我没有找到任何其他替代方法来在不使用ReportViewer的情况下在MVC中导出SSRS报告.

猜你在找的asp.Net相关文章