Microsoft Report Viewer仅显示三个字段,其中两个已禁用。它应该显示一个功能齐全的大型报告。
sql server配置已由多次完成并且在生产环境中运行这些相同报告的人进行过审查。我们还搜索了web.config并且没有找到任何不合适的地方。
Here's an image of what the (broken) report looks like.“结束日期”和“商店”字段已停用。单击“查看报告”会显示加载微调器,然后关闭而不会更改任何内容或抛出错误。
我们在两个不同的QA环境中看到了这个问题,一个使用旧的ASP.NET,另一个使用ASP.NET MVC 4.
Web.config突出显示
<sessionState mode="SQLServer" sqlConnectionString="Integrated Security=SSPI;Data Source=-------;" timeout="30" />
<compilation debug="true" targetFramework="4.0" >
<buildProviders>
<add extension=".rdlc" type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</buildProviders>
</compilation>
<pages enableViewState="true" clientIDMode="AutoID">
<controls>
<add tagPrefix="rsweb" namespace="Microsoft.Reporting.WebForms" assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</controls>
</pages>
<system.web>
<httpHandlers>
<add verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" validate="false" />
</httpHandlers>
</system.web>
<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>
以下是网页的相关部分:
<asp:ScriptManager ID='scriptManager' runat='server' AsyncPostBackTimeout="1800" EnablePartialRendering="false" />
<rsweb:ReportViewer ID="ReportViewer" runat="server" OnReportError="ReportError"
Font-Names="Verdana" Font-Size="8pt" Height="685px" ProcessingMode="Remote" Width="985px"
InternalBorderColor="White" InternalBorderWidth="0px" BackColor="White">
<ServerReport />
</rsweb:ReportViewer>
我们不知所措。有没有人见过这样的东西?
答案 0 :(得分:0)
如果您使用路由,则报表查看器控件依赖于MVC应用程序中不存在的回发。
我也看到你正在使用脚本管理器,如果你没有使用UpdatePanel,为什么会引用它。无论如何,超时可能小于报告允许的时间,并且您看到客户端超时或客户端断开连接的错误。
答案 1 :(得分:0)
我也面临同样的问题,我把RS连接到我的MVC应用程序,我得到了解决方案(Web浏览器兼容性)。
我所做的只是在我的表单的标题部分添加元标记。
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7;IE=EmulateIE8;"/>
最好的问候
答案 2 :(得分:0)
事实证明,毕竟报告的配置错误。谢谢你的回复!