2012-07-10 63 views
11

当我查看查看网页源代码时,发现了以下错误消息,但网页工作正常。我们的测试负责人在执行声明测试时发现错误。报告查看器配置错误 - 在查看网页的源码

报表查看器配置错误

报表查看器Web控制HTTP处理程序还没有被登记在 应用程序的web.config文件。添加

<add verb=" * " 
path="Reserved.ReportViewerWebControl.axd" type = 
"Microsoft.Reporting.WebForms.HttpHandler, 
Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, 
PublicKeyToken=b03f5f7f11d50a3a" /> 

对System.Web/HttpHandlers的web.config文件的 部分,或添加

<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" /> 

到system.webServer /处理器 部分为Internet Information Services 7或更高版本

为什么这是错误消息鉴于源上来..

注意:这个错误消息有一个div标签,它的style =“display:none”

我想知道为什么,但是每个人都只讨论了这个错误消息,并将其作为一个引发到网页中的错误消息。建议对web.config所做的更改已经存在于我们的配置文件中。

+1

你在IIS6运行?这是IIS 7配置。 – nunespascal 2012-07-11 09:33:50

回答

1

这就是我的报表查看器控件声明在web.config中的样子。让你确定你有类似的东西。如果你没有它,请添加。控件的版本可能不是同一个寿命。

<configuration> 
    ... 
    </system.web> 
     ... 
     <httpHandlers> 
      ... 
      <add verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/> 
      ... 
     </httpHandlers> 
     ... 
    </system.web> 
    ... 
</configuration> 
+0

上面的代码中出现'HTTP Error 500.23'错误。对于IIS 6和IIS7,你有粘贴相同的内容,或者我错过了某些东西的 – SearchForKnowledge 2015-03-30 15:28:46

3

为了安全添加IIS6和IIS7的配置。

IIS6:

<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" /> 
    </httpHandlers> 
</system.web> 

IIS7:

<system.webServer> 
    <handlers> 
     <add 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> 
+0

? – rahularyansharma 2012-09-19 05:37:07

+0

更正了答案。粘贴代码段时发生错误。 – nunespascal 2012-09-19 07:00:30

+0

这项工作...?我有IIS8.0 – SearchForKnowledge 2015-03-30 15:32:44

2

我只是检查在包括ReportViewer控件和已在生产中没有任何问题了近一年的应用程序,同样的内容在HTML内容中找到。

所以鉴于这个div没有显示(CSS属性display:none)这个事实,人们可以猜测这是一个错误消息,它只是为了便于显示,如果实际发生错误。如果错误涉及到客户端,那么以这种方式实现它会容易得多:所有客户端脚本必须做的才能显示消息是更改style属性 - 不需要操作DOM来追加错误消息,并且不需要在JavaScript中使用足够的语言获得本地化的错误消息(由于ReportViewer通过语言包提供本地化支持,每种语言都有不同版本的此错误消息 - 在ASP.NET上处理此问题更容易与所有其他本地化内容相比,在浏览器中的JavaScript)。是的,我在这里做心理学! :)

1

对于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> 
0

改变网页后。根据IIS版本的配置文件, 尝试添加以下代码部分:

if(!IsPostBack){ 
     // Here codes about ReportViewer1 
    } 

您可以检查此similar problem

6

下面是我的解决方案

<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" /> 
    </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> 
1

我也面临着报表浏览器的同样的问题不显示。从浏览器设置显示属性后,我得到我的错误为“报告查看器配置错误”。

我发现对于某些参数,我发送了不正确的值,即“string.empty”。我改变了我的代码发送一些值或null参数。现在我的报告正常显示。我通过发送正确的报告参数值来报告解决了我的问题。不要错过任何参数来分配适当的值或为空。

1

下面的代码如下所示

<system.webServer> 
<validation validateIntegratedModeConfiguration="false"/> 
<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>