命名约定和命名空间

zsh*_*arp 4 c# naming-conventions

如果我在一个图层上有与另一个图层上的对象同名的对象,最好是用一些前缀更改对象名称还是使用新的命名空间并用完全限定的名称引用它们?例如:

namespace Project1.Data
Object Person;

namespace Project1.Model
Object Person;
Run Code Online (Sandbox Code Playgroud)
Data.Person.Name=Person.Name;

OR

dbPerson.Name= Person.Name;
Run Code Online (Sandbox Code Playgroud)

M4N*_*M4N 12

我使用命名空间和命名空间别名,例如:

在适当的命名空间中定义类:

namespace Project1.Data
{
    public class Person {...}
}
namespace Project1.Model
{
    public class Person {...}
}
Run Code Online (Sandbox Code Playgroud)

在使用类的地方,要么使用完全限定名称,要么为命名空间定义别名(如果完整命名空间很长,则使用usefule):

using data = Project1.Data;
using model = Project1.Model;

data.Person p1 = new data.Person();
model.Person p2 = new model.Person();
//...
p1.Name = p2.Name;
Run Code Online (Sandbox Code Playgroud)

  • 有一点需要注意,(只是添加到你的答案)不要只使用别名.对两者使用别名,并始终使用别名引用它们.不要让其中一个掉到默认值,因为它会引起混淆. (4认同)