10

Ich schreibe eine ASP.NET-App, die einen SQL Server 2005 mit SSRS-Setup verwendet. Ich möchte das ReportViewer-Steuerelement verwenden, aber ich erhalte einen Fehler bei der Verwendung von ReportViewer 10, da es SSRS 2008 benötigt.Verwenden von ReportViewer 9 Steuerelement in VS 2010

Wie kann ich ReportViewer 9 in meiner Anwendung verwenden? Ich habe einen Verweis auf die Microsoft.ReportViewer.WebForms.dll Version 9 und entfernt den Verweis auf Version 10.

hinzugefügt

Meine Markup ist wie folgt:

<%@ Register Assembly="Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" 
    Namespace="Microsoft.Reporting.WebForms" TagPrefix="rsweb" %> 
<!-- standard markup --> 
<rsweb:ReportViewer ID="ReportViewer1" runat="server"></rsweb:ReportViewer> 

aber wenn ich versuche, dieses ich laufen den folgenden Fehler erhalten:

CS0433: The type 'Microsoft.Reporting.WebForms.ReportViewer' exists in both 'c:\WINDOWS\assembly\GAC_MSIL\Microsoft.ReportViewer.WebForms\10.0.0.0__b03f5f7f11d50a3a\Microsoft.ReportViewer.WebForms.dll' and 'c:\WINDOWS\assembly\GAC_MSIL\Microsoft.ReportViewer.WebForms\9.0.0.0__b03f5f7f11d50a3a\Microsoft.ReportViewer.WebForms.dll'

Was habe ich verpasst?

Update: Beim Versuch, den Report 10 zu verwenden, erhalte ich die folgende Fehlermeldung:

"Remote report processing requires Microsoft SQL Server 2008 Reporting Services or later."

Antwort

13

figured it out, vergaß 3 Referenzen in der web.config-Datei zu ändern:

innerhalb Httphandler:

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

und innerhalb von Baugruppen:

<add assembly="Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" /> 
<add assembly="Microsoft.ReportViewer.Common, Version=9.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" /> 
+1

Ich fand, dass Sie auch Ihre laufen müssen App im Classic-Modus (App-Pool-Einstellung), damit ReportViewer 9.0 funktioniert. –

+0

danke das hat perfekt funktioniert .. –

2

weiß nicht, warum, aber Sie sollten versuchen, ob das funktioniert: den folgenden Code hinzufügen

<runtime> 
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
    <dependentAssembly> 
    <assemblyIdentity name="Microsoft.ReportViewer.WebForms" publicKeyToken="b03f5f7f11d50a3a" /> 
    <bindingRedirect oldVersion="9.0.0.0" newVersion="10.0.0.0"/> 
    </dependentAssembly> 
</assemblyBinding> 

vor

</configuration> 

es funktionierte web.config für mich

Verwandte Themen