我得到一个:

找不到类型或名称空间名称

错误的c# WPF应用程序在VS2010。这部分代码编译得很好,但突然就出现了这个错误。我已经尝试删除项目引用和using语句,关闭VS2010并重新启动,但我仍然有这个问题。

有什么想法,为什么这可能会发生,似乎我在做正确的事情re Reference & using语句?

我还注意到在VS2010,智能感知的名称空间是工作的好,所以它似乎VS2010有项目引用,是看到名称空间在一方面,但在编译期间没有看到它?


当前回答

有同样的错误,我的故事如下: 在糟糕的合并(通过git)后,我的一个.csproj文件有重复的编译条目,如:

<Compile Include="Clients\Tree.cs" />
<Compile Include="Clients\Car.cs" />
<Compile Include="Clients\Tree.cs" />        //it's a duplicate

如果您有一个大的解决方案,并且错误窗口中有超过300条消息,那么很难检测到这个问题。 所以我已经通过记事本打开了损坏的.csproj文件,并删除了重复的条目。对我来说很管用。

其他回答

重新安装nuget包对我来说很有用。在我将. net Framework版本更改为与所有项目同步后,一些nuget包(特别是Entity Framework)仍然为以前的版本安装。这个命令在包管理器控制台中为整个解决方案重新安装包:

Update-Package –reinstall

我知道这是踢死马,但我有这个错误和框架在哪里好。我的问题基本上是声明无法找到接口,但它构建和访问都很好。所以我开始思考:“为什么只有这个界面,而其他人都工作得很好?”

最终,我使用WCF的端点接口访问了一个服务,该端点接口使用的是实体版本6,而其余的项目使用的是版本5。我没有使用NuGet,而是简单地将NuGet包复制到本地存储库以供重用,并以不同的方式列出它们。

例如,EntityFramework6.dll vs . EntityFramework.dll。

然后,我将引用添加到客户端项目,噗的一声,我的错误消失了。我意识到这是一个边缘情况,因为大多数人不会混合实体框架的版本。

我不知道为什么这样工作,但我删除了VS2015告诉我它找不到的项目引用,并再次添加它。解决了问题。我尝试过清理、构建和重新启动VS,但都无济于事。

我遇到了同样的问题:VS 2017强调引用项目中的一个类为错误,但解决方案构建正常,甚至智能感知工作。

下面是我解决这个问题的方法:

卸载引用的项目 在VS中打开。proj文件(我正在寻找重复的人建议在这里) 重新加载项目(我没有改变甚至保存proj文件,因为我没有任何副本)

这个方法对我很管用。在定义了类名的类中,例如:公共类ABC,删除一个字符并等待一会儿。您的错误列表将增加,因为您更改了名称。现在把输入的字符放回去。这对我有用,希望对你也有用。祝你好运! !