0

使用报告脚本工具从命令行发布报告时出现以下错误:

System.Web.Services.Protocols.SoapException:此报告的定义无效或不受此版本的 Reporting Services 支持。报表定义可能是使用更高版本的 Reporting Services 创建的,或者包含基于 Reporting Services 架构格式不正确或无效的内容

关于此错误还有其他问题,解决方案似乎总是安装SQL Server 2016或将我的报告项目更改为 2014 年的输出。事实上,这确实有效,但没有必要。我的SQL Server版本是13.0.4446.02016 年。此外,我可以在 VS 中正常发布,并将其设置为 2016 年。

有谁知道这是什么原因造成的?

4

1 回答 1

0

有几件事可以尝试:

  1. 你用的是什么版本的VS?我遇到了一个问题,我会在 VS 2015 中打开一个解决方案(我认为)并且它在没有告诉我的情况下升级了报告定义。当您在 VS 中选择部署目标时,它会即时更改文件,而不是解决方案中的源文件。因此,您会看到不同的结果。
  2. 您可以通过从 SSRS 下载报告并在文本编辑器中打开 RDL 来检查这一点。与您的解决方案 RDL 进行比较并检查标题。顶部的 Schema 是您要比较的内容:

    报告 xmlns="http://schemas.microsoft.com/sqlserver/reporting/2008 /01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner "

  3. 另一种选择:您是否尝试过使用 PowerShell 进行部署?查看SSRS GitHub以获取命令,但它会是 2 行,可能是 3 行代码。非常容易使用。

于 2017-10-23T10:26:37.790 回答