无法将mvcreportviewer与MVC 4应用程序集成

时间:2015-03-17 12:43:59

标签: c# asp.net-mvc-4 reporting-services

我很难在我的MVC 4应用程序中使用ilich的mvcreportviewer nuget包。我不确定问题出在哪里,但我收到的错误信息是:

  

完整路径长度必须少于260个字符;其他限制适用。如果报表服务器处于纯模式,则路径必须以斜杠开头。 (rsInvalidItemPath)

我觉得可能有几个地方我做错了什么。首先,我可能没有使用正确的URL连接到SSRS。在github上提供的示例项目中,url是/ TestReports / TestReport。但是,在我的报告的浏览器中,网址如下所示: http://localhost/ReportServer/Pages/ReportViewer.aspx?%2fTPSReports%2fTPSReport1&rs:Command=Render或者我也可以使用: http://localhost/Reports/Pages/Report.aspx?ItemPath=%2fTPSReports%2fTPSReport1

我已经安装了nuget包,它在我的项目中创建了一个MvcReportViewer.aspx页面以及一个错误页面,.js文件和MvcReportViewer引用。我在报告视图中尝试了以下内容以打开SSRS报告:

@Html.MvcReportViewer( "localhost%2fReports%2fPages%2fReport.aspx?ItemPath=%2fTPSReports%2fTPSReport1",
        new { Height = 900, Width = 900, style = "border: none" })

在示例中,url只是/ TestReports / TestReport,所以我也尝试过:

  • /报告/ TPSReport1
  • /报表/页/ TPSReports / TPSReport1
  • /页/ TPSReports / TPSReport1

SSRS配置为:

  • Web服务URL虚拟目录= ReportServer
  • 报表管理器URL虚拟目录=报告
  • 服务帐户= ReportServer
  • 数据库凭据使用ReportServer

我还试图在这样的控制器中下载报告:

using MvcReportViewer;
private ActionResult DownloadTPSReport(ReportFormat format, string reportName)
    {
        return this.Report(
            format,
            reportName);
    }

reportName变量是url。我尝试了上面提到的所有相同的内容。

我希望有人可以帮助我指出正确的方向。我认为错误信息具有误导性,因为网址肯定少于260个字符。

  • 我是否需要在我的MVC应用程序中为.aspx页面创建路由?
  • 我是否需要在IIS中执行任何操作?
  • 我如何确定真正的错误是什么?

谢谢

0 个答案:

没有答案