在C#中区分类名和属性有什么好的命名约定?

And*_*por 10 c# design-patterns naming-conventions

我经常遇到这种情况,以为我会看到其他人对此有何看法.

使用StyleCop约定,我发现我经常拥有一个很难与它访问的类名不同的属性名.例如:

public class ProjectManager
{
 // Stuff here
}

public class OtherClass
{
     private ProjectManager ProjectManager { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

它编译并运行,但似乎是一种容易混淆事物的方法,即使使用"this"也是如此.

Jar*_*Par 11

这实际上是.Net编程中非常常见的模式.尤其是枚举类型和成员,因为它是.Net设计指南推荐的编程方式.

4.0设计指南参考

虽然它可能有点令人困惑,但它并不是你曾经看过几次.这些工具很好地支持这种模式,并且给定一个是一个类型而另一个实例很难在不引起编译错误的情况下意外地反转它们.