【问题标题】:Report Viewer Configuration Error when upgraded from vs 2008 to vs 2013从 vs 2008 升级到 vs 2013 时报告查看器配置错误
【发布时间】:2016-04-19 16:53:20
【问题描述】:

我被分配了将我们的网站从 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 建议。我尝试了两个条目,我也单独尝试了每个条目。似乎没有什么可以解决这个问题。网站上的其他一切工作正常。

有人有什么建议吗?我需要将报告查看器升级到更高版本吗?我愿意尝试任何事情来让它发挥作用。谢谢。

提姆

【问题讨论】:

    标签: c# asp.net .net webforms reportviewer


    【解决方案1】:

    查看使用报表查看器的 我的 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.msiSQLSysClrTypes.msi。不幸的是,虽然我的机器上还有这两个,但我不知道下载它们的确切 URL。

    对于 ReportViewer,我尝试了 Microsoft 的 Report Viewer 2012 Runtime,但它与我所拥有的不是二进制匹配。不过,这似乎是正确的,而我的只是过时了。我会从那开始。

    对于SQLSysClrTypes.msi,情况基本相同。您可以从Microsoft® SQL Server® 2012 SP1 Feature Pack 获得它,但它与我使用的不完全匹配。再次,希望它刚刚更新。

    【讨论】:

    • 我已经尝试了所有这些,但没有运气。虽然我应该提到的一件事是我正在使用 IIS Express 在本地进行测试,所以我决定在我的 IIS 服务器上创建测试网站,看看是否有问题。
    • 我不得不暂时离开这个问题(我们的网站仍然使用 .Net 2.0 运行),因为出现了更紧急的事情。我终于弄明白了。这是你所期望的最后一件事。旧代码使用 CSS 类在报表查看器上进行样式设置。一旦我替换了那个类,错误就消失了。之后我在报告页面上遇到了其他问题(比如我必须将 Page_Load 中的代码放入 OnInit 方法中,否则报告的加载将永远持续下去),但现在一切正常。
    猜你喜欢
    • 2016-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多