c# – 报表查看器控件未显示SSRS的报表

我在VS 2013中使用MS Report Viewer 10;该项目正在从VS 2010升级.我已经解决了与Report Viewer相关的一系列问题,并使控件本身启动并运行.我在SSRS中有一些报告,我已经确认报告本身可以正常工作.

我有一个用于数据输入的Web窗体ASPX页面.它通过JSON将数据传递到包含Report Viewer控件的弹出ASPX页面.

我正在运行IIS Express 7,SQL Server 2008 R2(v10.50)和.NET Framework 4.5的当前目标框架.

报告查看器不返回任何报告 – 没有错误消息,没有报告布局缺少数据,当然也没有完整的报告.当我通过VS运行具有相同输入的相同报表时,报表预览会显示我期望的结果.

ProcessingMode设置为Remote,ReportServerCredentials为null.我研究了这意味着什么,这意味着Report Viewer应该使用当前的网络凭证(即当前用户)连接到SSRS.我确认当前用户正确匹配我当前的登录信息;我可以正确使用Windows身份验证连接到SSRS和SQL Server.

ReportViewer不在Web表单设计器中创建,因此我无法在设计时在其上设置任何属性.

所以我怀疑我的问题是运行时的身份验证问题.我没有关于如何调查和解决这个问题的想法.

页面上的控制代码:

    <ssrs:ReportViewer ID="ReportViewer" runat="server" ProcessingMode="Remote" Width="100%"
        Height="690" ShowParameterPrompts="false" AsyncRendering="false"/>

尝试运行报告后,SSRS日志包含以下条目:

library!ReportServer_0-3!1dc8!(datetime): i INFO: RenderForNewSession('(report)')
webserver!ReportServer_0-3!1dc8!(datetime, 1 second later): i INFO: Processed report. Report='(report)', Stream=''

遗留项目使用MS Report Viewer 9.它运行得很好.我在web.config中看到的唯一更改与更高版本以及从IIS 6到IIS 7的更改有关.

由于它出现在评论中,这是web.config中的相关行:

<system.webServer>
  <handlers>
    <add name="ReportViewerWebControlHandler" preCondition="integratedMode" verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
  </handlers>
</system.webServer>

我的报告查看器窗口:
c# – 报表查看器控件未显示SSRS的报表

ETA 24 Nov:我最终在应用程序日志中输入了一个条目:HttpHandlerInputException,Missing URL参数:IterationId.这个问题已在another STOF Q&A.讨论过

解决方法:

按照@CodeswithHammer的要求,我将这个引用添加到另一个线程,只是为了节省人们一些时间来搜索它.

https://*.com/a/22000827/1807669

上一篇:app架构师,音视频时代你还不会NDK开发?含小米、腾讯、阿里


下一篇:c# – 如何在(rdlc)报告中水平显示表格