错误 BC30560:“ReportViewer”在命名空间“Microsoft.Reporting.WebForms”中不明确

Posted

技术标签:

【中文标题】错误 BC30560:“ReportViewer”在命名空间“Microsoft.Reporting.WebForms”中不明确【英文标题】:Error BC30560: 'ReportViewer' is ambiguous in the namespace 'Microsoft.Reporting.WebForms' 【发布时间】:2021-11-28 14:00:33 【问题描述】:

发布网站时,我收到此错误大约 23 次。编译和测试没有问题。我知道有人会有说“从 web.config 中删除重复引用”的冲动,但这不是问题所在。这是一个始于 2008 年的项目,ReportViewer 的使用早于添加到我们 git 存储库的代码(这反过来又早于我的工作),所以我知道代码在技术上没有任何问题。事实上,直到上周,它才发布得很好。发生了什么变化?我终于得到了一台更新、更快的电脑。客户希望删除一行。我将代码放在新计算机上,删除了有问题的行,构建,测试。一切正常。然后我去发布并得到 ReportViewer 错误。我正在旧计算机上处​​理项目的逐字节副本,唯一失败的是在新计算机上发布。

很明显,新计算机上没有安装阻止发布的东西,但我不知道它是什么。 (或者可能安装了不应该安装的东西。“新”计算机实际上正在被其他开发人员使用。)

【问题讨论】:

【参考方案1】:

我一直在为这个问题解决任何问题。我想到了从 Microsoft.ReportViewer.WebForms 文件夹中删除 ReportViewer DLL 的所有副本。有5个不同的版本。当我尝试移动版本 10 时,Windows 本身犹豫不决。这是我的线索。事实证明,从版本 10 切换到版本 12 的人错过了几个源文件。我更新了对第 12 版的引用,问题得到了解决。

现在真正的谜团是:为什么它可以在旧电脑上运行?

【讨论】:

以上是关于错误 BC30560:“ReportViewer”在命名空间“Microsoft.Reporting.WebForms”中不明确的主要内容,如果未能解决你的问题,请参考以下文章

rdlc ReportViewer 失败

如何解决从VS2010到VS2015的reportviewer问题

ReportViewer“缺少 URL 参数:名称”

ReportViewer中的SSRS导出返回401 Unauthorized

无法加载文件或程序集“Microsoft.ReportViewer.WebForms”

Reportviewer,一些报告打印,而另一些则不会