手动更改命名空间是不对的

时间:2013-07-15 22:24:00

标签: c# namespaces

出于组织目的,我手动设置每个类中的命名空间 就像我有一个名为myProject命名空间的项目是 myProject 我将其更改为 mySolution.myProject 然后以相同的方式更改嵌套目录

namespace myProject.Folder1
{
     ///
}

namespace mySolution.myProject.Folder1
{
     ///
}

这样多个项目可以是一个命名空间的一部分,
这是一种有效的方法吗?

4 个答案:

答案 0 :(得分:1)

更改命名空间非常好。有时这样做可能是有利的。如果要将大型项目导入到较小的项目中,则将较小的项目更改为较大项目的命名空间约定可能是有意义的。

这样做的一个问题与网络标记文件有关。 .aspx / .ascx,不确定MVC标记。我记得在MVC2中有这个问题。此处对命名空间的不正确引用不会被调试编译器捕获,并且在尝试加载页面时会引发错误。因此,如果您确实更改了现有文件的命名空间,请记住更改编译器未检查的其他源文件。

答案 1 :(得分:0)

只要更新对这些命名空间的任何引用,手动更改命名空间就不是问题。

即在其他文件中;

using myProject.Folder1;

如果没有更新到;

using mySolution.myProject.Folder1;

然后你会遇到编译错误。

答案 2 :(得分:0)

我会为此使用Refactor的重命名选项,只是为了确保在某处没有对不正确的命名空间的任何引用。至于使用mySolution.myProject作为命名空间,我认为它没有任何问题。

答案 3 :(得分:0)

从默认名称更改名称空间非常常见。这个stackoverflow问题对命名约定有一个很好的答案:

namespace naming conventions

在项目属性下,“应用程序”选项卡上有一个设置,您可以在其中指定默认命名空间。如果在创建项目时进行设置,则无需在创建项目时手动更改每个类文件。