在VS 2010中使用ReportViewer 9控件

Fer*_*min 10 reportviewer visual-studio-2010 reportingservices-2005 reporting-services

我正在编写一个使用带有SSRS设置的SQL Server 2005的ASP.NET应用程序.我想使用ReportViewer控件但是在使用ReportViewer 10时出现错误,因为它需要SSRS 2008.

如何在我的应用程序中使用ReportViewer 9.我添加了对Microsoft.ReportViewer.WebForms.dll版本9的引用,并删除了对版本10的引用.

我的标记如下:

<%@ 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>
Run Code Online (Sandbox Code Playgroud)

但是当我尝试运行它时,我收到以下错误:

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'

What have I missed!?

Update: When trying to use the ReportViewer 10 I get the following error:

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

Fer*_*min 13

弄清楚了,忘了在web.config文件中更改3个引用:

在HttpHandler中:

<add verb="*" path="Reserved.ReportViewerWebControl.axd" type = "Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
Run Code Online (Sandbox Code Playgroud)

并在集会内:

<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" />
Run Code Online (Sandbox Code Playgroud)