出于组织目的,我在每个类中手动设置命名空间。
就像如果我有一个名为 myProject 名称空间的项目是myProject我将其更改为mySolution.myProject
然后以相同的方式更改嵌套目录
namespace myProject.Folder1
{
///
}
到
namespace mySolution.myProject.Folder1
{
///
}
这样多个项目可以是一个命名空间的一部分,
这是一种有效的方法吗?
出于组织目的,我在每个类中手动设置命名空间。
就像如果我有一个名为 myProject 名称空间的项目是myProject我将其更改为mySolution.myProject
然后以相同的方式更改嵌套目录
namespace myProject.Folder1
{
///
}
到
namespace mySolution.myProject.Folder1
{
///
}
这样多个项目可以是一个命名空间的一部分,
这是一种有效的方法吗?
更改命名空间非常好。有时这样做可能是有利的。如果您要将大型项目导入到较小的项目中,则将较小的项目更改为较大项目的命名空间约定可能是有意义的。
这样做的一个问题与网络标记文件有关。.aspx/.ascx,不确定 MVC 标记。我记得在 MVC2 中遇到过这个问题。此处对命名空间的不正确引用不会被调试编译器捕获,并且会在尝试加载页面时引发错误。因此,如果您确实更改了现有文件的命名空间,请记住更改编译器未检查的其他源文件。
只要您更新对这些命名空间的任何引用,手动更改命名空间就不是问题。
即在您拥有的其他文件中;
using myProject.Folder1;
如果没有更新到;
using mySolution.myProject.Folder1;
那么你会得到编译错误。
我会为此使用 Refactor 的重命名选项,以确保在某处没有对不正确命名空间的任何引用。至于用作mySolution.myProject
命名空间,我认为它没有任何问题。
更改默认命名空间是很常见的。这个stackoverflow问题对命名约定有一个很好的答案:
在您的项目属性下,应用程序选项卡上有一个设置,您可以在其中指定默认命名空间。如果您在创建项目时进行了设置,则不必在创建每个类文件时手动更改它们。