我得到一个:

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

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

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

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


当前回答

我在将现有项目从VS2008升级到VS2012时遇到了这个问题。我发现有两个项目(我只创建了两个)针对的是不同的. net框架(3.5和4.0)。我在项目的Application选项卡上解决了这个问题,确保两个项目都有“。NET Framework 4”中的目标框架。

其他回答

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

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

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

我在项目资源管理器中打开项目下面的引用,将鼠标悬停在其中一个缺失的引用上,很快,它就找到了所有东西。然后我就可以成功地建造了。

运行Visual Studio Community 2019,版本16.8.4

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

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

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

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

在我的案例中,问题是在将命名空间更改为与另一个项目中的名称完全相同之后(有意地),程序集的名称也被VS更改了,因此有两个具有相同名称的程序集,其中一个覆盖了另一个

在我的例子中,我有一个在适当的源文件夹中列出的类,但没有在解决方案资源管理器中注册。我必须右键单击项目>添加现有项目,手动选择它说它缺少的类。然后一切都运转正常!