【发布时间】:2012-10-22 19:31:17
【问题描述】:
我最近遇到了 VS2010、C# 和 .Net 4 的问题,我无法使用我引用的程序集(称为 AssemblyA)中的命名空间。类似于here的问题。
我能够通过将 AssemblyA 设置为目标 x86 平台而不是 Any Cpu 来解决问题。
我的问题是为什么将平台目标更改为 x86 允许我在项目中使用来自 AssemblyA 的命名空间?
我想指出,我能够在其他项目中引用 AssemblyA,而无需更改平台目标。此外,我所有的参考资料都是项目参考资料。
编辑:显然我弄错了。即使更改为 x86 也无法正常工作。有什么想法可能导致这种情况吗?
更新:我的所有项目都使用完整的 .NET 4 配置文件。
编辑:
在做了一些测试后,我有了更多信息。当我在调试/发布版本之间切换(与我切换的顺序无关)并在 AssemblyA 上进行清理时,我可以毫无问题地使用命名空间。一旦我重建了 AssemblyA,我就不能再使用命名空间了。我的目标平台似乎并不重要。
【问题讨论】:
-
两个项目都使用“常规”配置文件还是其中之一是客户配置文件?
-
此类错误最常见的错误是已经指出的不同配置文件(客户端与完整)。您的项目的命名空间和库中的类是什么?我记得以前在某些情况下遇到过问题,但我不记得确切的细节。
标签: c# .net visual-studio-2010