【发布时间】:2013-03-14 12:06:46
【问题描述】:
我有一个 C# Windows Forms 应用程序(我们称之为 App.exe),由于奇怪的原因无法构建。这似乎是由于 Visual Studio 2010 中的一个错误。我无法升级到 VS2012。
- 代码更改和构建后,VS2010 似乎无法删除旧的二进制 App.exe。
- 然后它会发现旧二进制文件中的某些类型并抛出错误“以下方法或属性之间的调用不明确”。
- 错误消息中显示的类型相同。所以我认为它在旧的二进制文件和源代码中都找到了类型。
- 当我清理并重建,或从磁盘中删除旧的二进制 App.exe 时,构建成功
这是我遇到的错误类型的示例:
The call is ambiguous between the following methods or properties:
'App.Namespace.Class.Method(System.Type)'
and
'App.Namespace.Class.Method(System.Type)'
如果您能帮我解决这个问题,我将不胜感激。
编辑
这是由于应用程序对自身有程序集引用。不知道这是怎么发生的,但是当我删除参考时,问题就解决了。
【问题讨论】:
-
你试过删除 bin 和 obj 文件夹吗? (先备份)。
-
你是怎么做到的 :) 我想说的是 lib 的“两个版本”
标签: c# .net visual-studio-2010