2010-07-13 67 views
2

這是在推動我香蕉 - 我有一個網絡應用程序,現有報告在ReportViewer的第10版中顯示,沒有問題。我們正在擴展該網站,並且基於第二個本地業務對象(我們正在與NetSuite Web服務集成)創建一個新報告。頁面加載並請求傳回的數據 - 但是,當嘗試創建ReportViewer實例時,頁面會在生成的標記中引發異常: Microsoft JScript運行時錯誤:'Microsoft'未定義。如何解決VS 2010 ASP.Net ReportViewer HttpHandler註冊錯誤?

點擊繼續加載頁面錯誤文本:

The Report Viewer Web Control HTTP Handler has not been registered in the application's web.config file. Add <add verb="*" path="Reserved.ReportViewerWebControl.axd" type = "Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> to the system.web/httpHandlers section of the web.config file, or add <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" /> to the system.webServer/handlers section for Internet Information Services 7 or later. 

我跑這localhost通過VS ASP.Net運行時服務器。顯然,如果我的web配置不正確,第一個報告查看器無法加載報告,所以不能這樣做。

我沒有得到第二次報告成功加載一次,但許多後續嘗試都導致上述情況。我試過在新頁面上刪除報告,並在原始頁面中進行復制,指向其報告/數據源,並獲得相同的結果。莫名其妙!

回答

4

我相信你確實需要將密鑰添加到你的web.config文件中。您還需要在具有報告查看器的aspx文件內添加對ReportView組件的引用。 Web.config文件應該是這個樣子

<assemblies> 
    <add assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" /> 
    <add assembly="Microsoft.ReportViewer.Common, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" /> 
</assemblies> 
<httpHandlers> 
    <add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" validate="false" /> 
</httpHandlers> 

aspx文件應該有接近HTML頂部

<%@ Register Assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" 
    Namespace="Microsoft.Reporting.WebForms" TagPrefix="rsweb" %> 
+0

對此有何更新? – user384080 2010-10-27 21:43:06

+0

沒有我..... – MikeTWebb 2010-10-27 23:20:05

0

謝謝,邁克,我已經獲得了所有在WebConfig和新的一頁。它似乎增加了一個新的表單與另一個reportviewer生成異常。

也許VS2010中的dev服務器存在問題?我將嘗試在IIS本地主機上運行,​​看看是否有區別。

Michael

+0

你找到了解決方案嗎? – user384080 2010-10-27 21:43:22

0

我遇到了這個問題,我高度懷疑它是可以解決的。我所做的是使用版本= 9.0.0.0,這似乎很容易工作。但是,由於必須編輯XML或在對報告文件進行更改時使用VS2008,因此很忙碌。

1

我已經找到了解決方案,我說:

由於我使用的是集成的管道模式,我有以下添加到根web.config:

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

請注意配置是在system.webServer,而不是system.web

希望它有幫助。

+0

您必須爲iis 7及更高版本的system.webserver添加處理程序,如報告查看器錯誤消息中所述 – mohas 2014-01-27 11:44:56