我得到一个:
找不到类型或名称空间名称
错误的c# WPF应用程序在VS2010。这部分代码编译得很好,但突然就出现了这个错误。我已经尝试删除项目引用和using语句,关闭VS2010并重新启动,但我仍然有这个问题。
有什么想法,为什么这可能会发生,似乎我在做正确的事情re Reference & using语句?
我还注意到在VS2010,智能感知的名称空间是工作的好,所以它似乎VS2010有项目引用,是看到名称空间在一方面,但在编译期间没有看到它?
我得到一个:
找不到类型或名称空间名称
错误的c# WPF应用程序在VS2010。这部分代码编译得很好,但突然就出现了这个错误。我已经尝试删除项目引用和using语句,关闭VS2010并重新启动,但我仍然有这个问题。
有什么想法,为什么这可能会发生,似乎我在做正确的事情re Reference & using语句?
我还注意到在VS2010,智能感知的名称空间是工作的好,所以它似乎VS2010有项目引用,是看到名称空间在一方面,但在编译期间没有看到它?
当前回答
为此挣扎了一段时间,而且不是第一次了。在过去,这通常是配置不匹配造成的,但这次不是。
这一次,在我的应用程序中,自动生成绑定重定向被设置为true。
实际上,如果我在我的库中将它设置为true,那么我的库就会在Microsoft中的类型中得到这个错误。报告名称空间,如果在我的应用程序中将它设置为true,那么我的应用程序将从我的库中获取类型的此错误。
此外,对于我的库,该值似乎默认为false,但对于我的应用程序,该值为true。因此,如果我不指定任何一个,我的库构建正常,但我的应用程序得到了我的库的错误。所以,我必须在我的应用程序中明确地将其设置为false,否则我会得到这个错误,没有说明原因。
我还发现,如果项目没有使用sdk csproj,无论设置如何,我都会收到这条消息。一旦我转换到sdk csproj,设置就会有所不同。
同样,在我的例子中,这一切似乎都与Microsoft.ReportingServices.ReportViewerControl.Winforms nuget包有关,它在我的根库中。
其他回答
在我的案例中,问题是在将命名空间更改为与另一个项目中的名称完全相同之后(有意地),程序集的名称也被VS更改了,因此有两个具有相同名称的程序集,其中一个覆盖了另一个
I had a similar issue: The compiler was unable to detect a folder inside the same project, so a using directive linking to that folder generated an error. In my case, the problem originated from renaming the folder. Even though I updated the namespace of all the classes inside that folder, the project info somehow failed to update. I tried everything: deleting the .suo file and the bin and obj folders, cleaning the solution, reloading the project - nothing helped. I resolved the problem by deleting the folder and the classes inside, creating a new folder and creating new classes in that new folder (simply moving the classes inside the new folder didn't help).
PS:以我为例,我正在开发一个web应用程序,但这个问题可能发生在不同类型的项目中。
对于那些在试图将网站发布到Azure时遇到这种错误的人来说,上面这些看起来很有希望的解决方案都没有帮助到我。我也在同一条船上——我的解决方案本身构建得很好。最后我不得不这么做
把我溶液里的鸡块都去掉。 关闭并重新打开我的溶液。 重新添加所有的nuget包。
有点痛苦,但这是我能让我的网站发布到Azure的唯一方法。
我的情况和这里讨论的一样,但在我移除系统之前没有解决它。来自引用列表的核心引用(没有它一切都可以正常工作)
希望这能帮助到一些人,因为这个问题很令人沮丧
我在将现有项目从VS2008升级到VS2012时遇到了这个问题。我发现有两个项目(我只创建了两个)针对的是不同的. net框架(3.5和4.0)。我在项目的Application选项卡上解决了这个问题,确保两个项目都有“。NET Framework 4”中的目标框架。