ReportViewer无法在Web服务器上运行

时间:2015-02-12 18:52:17

标签: asp.net iis-7.5 reportviewer .net-framework-version

在过去的一个月里,我使用VS2013在C#中开发了一个WebForm应用程序。它在我调试它时工作得很好,并且几乎完美地使用.NET Framework v4.030319在应用程序池上的iis 7.5服务器上发布。问题是报表查看器控件不起作用,就像这个博客一样:

http://blogs.msdn.com/b/webtopics/archive/2009/02/10/report-viewer-toolbar-does-not-render-properly-on-iis-7-0.aspx

或过去4天我读过的其他49个博客......我尝试了所有解决方案,但没有一个有效。我100%肯定这不是由于我的报告,因为仅仅为了测试,我创建了一个基本报告(只是一个文本框,没有参数,没有数据源)和一个新页面加载了这个报告,我遇到了同样的问题。

以下是web.config文件中的相关代码:

<system.web>
  <httpHandlers>
    <add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" validate="false" />
  </httpHandlers>
  <authentication mode="None" />
  <compilation debug="true" targetFramework="4.5">
    <assemblies>
      <add assembly="Microsoft.ReportViewer.WebForms, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91" />
      <add assembly="Microsoft.ReportViewer.Common, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91" />
      <add assembly="Microsoft.Build.Framework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
    </assemblies>
    <buildProviders>
      <add extension=".rdlc" type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.WebForms, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
    </buildProviders>
  </compilation>
  <httpRuntime targetFramework="4.5" />
  [...]
</system.web>
<system.webServer>
  <modules>
    <remove name="FormsAuthentication" />
  </modules>
  <validation validateIntegratedModeConfiguration="false" />
  <handlers>
    <add name="ReportViewerWebControl" verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
  </handlers>
</system.webServer>

是的,我也在服务器上创建了映射。有人可以帮我解决这个问题。我有点心烦意乱。

2 个答案:

答案 0 :(得分:3)

我最终通过在服务器上安装以下内容来解决它:

  • dotNetFx45
  • ReportViewer 2010 Redistributable
  • SQL Server 2012的Microsoft Microsoft系统CLR类型
  • ReportViewer 2012 Runtime

即使没有被问到,也要重新启动它。之后,报告显示正常。我没有得到任何错误消息的事实并没有太大帮助。此外,服务器是prod所以我不能每次都重新启动它。无论如何,它现在正在工作,这是唯一重要的事情。感谢。

答案 1 :(得分:0)

对我来说,下面提到的这两个并没有服务器重启 ReportViewer 2010 Redistributable ReportViewer 2012运行时 感谢