将项目转换为 VS 2010 时出现命名空间错误

本文关键字:命名空间 错误 2010 项目 转换 VS | 更新日期: 2023-09-27 17:55:55

所以我是一个初出茅庐的程序员,被指派去了解一个已经开发的应用程序(在VS2005中,然后在2008年)很长一段时间。在项目的整个生命周期中,其中的命名约定变得有些复杂。为了举例说明,这里是命名结构的一部分。

_MegaCorp.sln

Application_Install

Megacorp

DbResources.csproj

Forms

Megacorp.Forms.Concept.csproj

Properties

Resources

Megacorp

Forms

Concept

xyz.cs

这可能不是组织信息的最佳方式,但它在VS2008中运行良好。更新到VS2010应该不需要对现有代码进行大修,对吧?

正在发生的事情是这样的:当xyz调用DbResources时,Visual studio正在查找Megacorp.Forms.Concept.Megacorp,而不是在父Megacorp文件夹中。所有正确的引用和 using 语句都是有序的:正如我所说,VS2008 中一切正常。这是怎么回事?

    Error   826 The type or namespace name 'xxx' does not exist in the namespace 'MegaCorp.Forms.Concept.Megacorp.Forms.Concept' (are you missing an assembly reference?)   C:'x'y'c-sharp'Megacorp'Forms'Concept'ConstructEditor.Designer.cs   99  63  MegaCorp.Forms.Concept

更新:如果我在每次使用 xyz.cs 中的类之前添加global::,这将解决问题。但是,编译器报告了大约 1,000,000 行代码和 400 多个错误。我敢肯定,如果我梳理 400 个错误中的每一个,在每个错误之前粘贴global::,就会出现更多错误。必须有另一种方法可以做到这一点,因为同样,该解决方案包括一个在VS2008中编译的非常实用且正在使用的应用程序。感谢您的帮助!

将项目转换为 VS 2010 时出现命名空间错误

我有类似的问题,发现它与目标框架有关。检查所有添加的引用是否都是同一目标框架的解决方案。