VS2012烦恼 - 类型或命名空间名称在命名空间中不存在

5

大家好,

我不知道这个问题是否只出现在VS2012中。我没有在VS2010或以前的版本中看到过。

我有一个在VS2012中的解决方案,其中包含了一些自己创建的项目。主要项目是一个SharePoint 2010项目,它引用了几个类库项目,这些项目在SharePoint项目中使用。

我可以构建解决方案,所有内容都编译正常。但一旦我启动该解决方案,就会出现以下相同两个项目的错误:

类型或命名空间名称“XXX”不存在于命名空间“YYYY”中(是否缺少程序集引用?)

我可以通过编译任何一个出现错误的项目来解决这个问题,然后我就可以启动解决方案并在SharePoint中运行了。

我不知道这是否特定与一个SharePoint项目相关,或者其他人在他们的解决方案中是否也遇到了这个问题。这只是有点麻烦。它并不总是发生,似乎有间歇性。

我没有对引用的项目进行任何更改——只有主项目有变化。

清理和构建解决方案也无法解决此问题。我需要手动构建其中一个有问题的项目。所有项目都已在“配置管理器”中设置为构建,而主项目则已设置为部署,看起来一切都正确。

有什么想法吗?

谢谢,

Andez


这更像是 IntelliSense 解析错误而不是构建错误。检查所有项目是否针对相同的 .NET 框架版本,并且不使用客户端配置文件。如果您无法更改这些项目,那么当然没有太多可以做的了。 - Hans Passant
嗨Hans,它不让我运行/调试解决方案 - 是Intellisense引起的吗?所有项目都设置为使用.NET 3.5,但是我在警告中有一个对x86组件的引用:项目正在构建的处理器架构“MSIL”与引用“OSIsoft.PISDK,Version=1.4.0.0,Culture=neutral,PublicKeyToken=c3309f0734ba2805,processorArchitecture=x86”,“AMD64”的处理器架构不匹配。 - Andez
我也遇到了这个问题。在我的情况下,重建无效。我已经束手无策了。 - Emmanuel
一样的问题。这是VS2012中的一个错误。只会在C#项目中出现,即使重新构建也会在切换到另一个源文件后再次出现该死的波浪线。 - jerhewet
2个回答

1
当引用的项目/DLL指向另一个.NET框架时,会出现这种情况。仔细检查项目属性即可。

1

对于我来说,与发帖者描述的情况相同的行为在x64构建中确实发生了。

我的解决方法是切换到Any CPU(在配置管理器:活动解决方案平台中)。这可能听起来很糟糕,但至少我可以继续在我的项目上工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接