我被分配了将我们的网站从VS 2008升级到VS 2013的任务。我在途中遇到了几个绊脚石。我已将项目从.Net 2.0升级到4.0,并且网站运行正常,但我在尝试查看报告时遇到以下错误(报告本身不显示):
报告查看器配置错误
报表查看器Web控件HTTP处理程序尚未注册 应用程序的web.config文件。添加到system.web / httpHandlers web.config文件的一部分,或添加到system.webServer / handlers Internet Information Services 7或更高版本的部分。
某些报告已通过在VS 2013中选择报告进行转换,然后询问您是否要将此报告转换为最新的RDLC格式?我打得好,看起来很好。所有报告都会发生此错误。升级后的那个或我从未在VS 2013中打开的那个。我还从Report Viewer 2008升级到Report Viewer 2010.我试图在错误中添加Web.config建议。我尝试了两个条目,我也单独尝试了每个条目。似乎没有什么能解决这个问题。网站上的其他所有工作正常。
有人有什么建议吗?我是否需要将Report Viewer升级到更高版本?我愿意尝试任何事情让它发挥作用。感谢。
添
答案 0 :(得分:0)
查看使用报表查看器的我的 VS 2013项目,我正在使用此报表查看器NuGet包(如packages.config文件中所示):
<package id="MicrosoftReportViewerWebForms" version="11.0.0.0" targetFramework="net45" />
然后在我的web.config中,我有这两个相关部分:
<system.web>
<compilation debug="true" targetFramework="4.5">
<buildProviders>
<add extension=".rdlc" type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.WebForms, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
</buildProviders>
</compilation>
</system.web>
和
<system.webServer>
<handlers>
<add name="ReportViewerWebControlHandler" preCondition="integratedMode" 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>
最后,我必须在服务器上安装ReportViewer。这涉及ReportViewer.msi
和SQLSysClrTypes.msi
。不幸的是,虽然我的机器上仍然有两个,但我不确切知道下载它们的URL。
对于ReportViewer,我尝试过来自Microsoft的Report Viewer 2012 Runtime,但它不是我所拥有的二进制匹配。尽管如此,这似乎是正确的,我的只是过时了。我从那开始。
对于SQLSysClrTypes.msi,它基本上是相同的情况。您可以从Microsoft® SQL Server® 2012 SP1 Feature Pack获取它,但它与我使用的不完全匹配。再次,希望它刚刚更新。