我有一个包含许多项目的解决方案,这些项目都使用相同的根命名空间。没有代码文件明确命名命名空间。所以可以说根命名空间是ExampleRootNamespace
.
现在,当我想将显式命名的命名空间添加到我正在处理的代码文件之一时,就会出现问题。我希望能够将此代码与程序集的其余部分隔离,以便能够针对它运行 FxCop。所以我Namespace Interfaces.CSV
在代码文件中添加了类似的东西。
这会导致引用此程序集的任何代码都需要说Imports ExampleRootNamespace.Interfaces.CSV
. 到现在为止还挺好。我什至可以针对程序集运行 FxCop。现在的问题是,在其他程序集中我不能再说什么了,比如:
Public class frmInputBoolean Inherits
ExampleRootNameSpace.frmFormTemplate
Visual Studio 现在要求我将命名空间重命名为:
Public class frmInputBoolean Inherits
Global.ExampleRootNameSpace.frmFormTemplate
有数百个与此相关的错误。所以我的问题是:
1)为什么第一次在根目录下命名命名空间会导致程序出现问题?
2)在不重命名的情况下是否有解决此问题的方法?
我还想补充一点,ExampleRootNamespace.Interfaces.CSV
我没有在代码库的任何地方引用它。我目前只是从一个单元测试项目中引用它。所以我不明白为什么添加这个命名空间会导致问题。