我在报表查看器中显示SSRS报表(.rdl)时收到错误。错误是这样的..
An error occurred during local report processing.
The definition of the report 'Main Report' is invalid.
The report definition is not valid. Details: The report definition has an invalid target namespace 'http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition' which cannot be upgraded...
我是SSRS报告的新成员......所以Plz帮助我.........
答案 0 :(得分:2)
这似乎是格式版本问题。您能否直接在SSRS上正确查看报告(没有控制权)?
如果是这样,可能意味着您需要在应用程序中升级ReportViewerControl - VS 2010具有控件的第10版。
如果没有,则可能意味着上传到SSRS的RDL不是您服务器的正确版本。
修改强> 你还没有说明你的应用程序是web还是windows - 我已经假设了web。 可能发生的是您从VS2008升级了项目,它仍然引用了ReportViewer控件的V 2008?
检查您应用的web.config
在<system.web><compilation><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"/>
在<system.web><compilation><buildProviders>
下
<add extension=".rdlc" type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.Common, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
您需要确保您的Web项目引用了{10} Microsoft.ReportViewer.Common
和Microsoft.ReportViewer.WebForms
的v 10,并将其设置为部署到您的bin目录。
<强> EDIT2 强>
VS2010使用Ajax - 在ReportViewer控件之前将ScriptManager添加到您的页面,或者只是粘贴以下内容:
<asp:ScriptManager ID="scmForReportViewer" runat="server">
</asp:ScriptManager>