命名警告
命名警告支持遵循 .NET Framework 设计指导原则的命名约定。
本节内容
规则 |
说明 |
---|---|
此规则假定当前不使用名称中包含“reserved”的枚举成员,而是将其作为一个占位符,以在将来的版本中重命名或移除它。 重命名或移除成员是一项重大更改。 |
|
事件的名称以“Before”或“After”开头。 若要命名按特定顺序引发的相关事件,请使用现在时或过去时指示一系列操作中的相对位置。 |
|
公共枚举具有 System.FlagsAttribute 特性并且其名称不是以“s”结尾。 用 FlagsAttribute 标记的类型具有复数形式的名称,因为该特性指明可以指定多个值。 |
|
外部可见标识符的名称中包含一个或多个未被 Microsoft 拼写检查器库识别的单词。 |
|
不能仅通过大小写区分命名空间、类型、成员和参数的标识符,因为针对公共语言运行时的语言不需要区分大小写。 |
|
外部可见的接口的名称不以大写的“I”开头。 外部可见的类型或方法上的泛型类型参数的名称不以大写的“T”开头。 |
|
外部可见成员中的某个参数的名称包含一个数据类型名称,或者外部可见成员的名称包含一个语言特定的数据类型名称。 |
|
按照约定,只有某些编程元素具有以特定前缀开头的名称。 |
|
按照约定,只有扩展某些基类型或实现某些接口的类型的名称或者从这些类型派生的类型的名称,应该以特定的保留后缀结尾。 其他类型名称不应使用这些保留的后缀。 |
|
命名约定规定,复数形式的枚举名称表示可以同时指定多个枚举值。 |
|
以一致的方式命名重写层次结构中的参数可以提高方法重写的可用性。 如果派生方法中的参数名与基声明中的名称不同,可能会导致无法区分出该方法是基方法的重写还是该方法的新重载。 |
|
参数名称应传达参数的含义,成员名称应传达成员的含义。 两者相同的设计非常少见。 使参数与其成员同名会导致不直观的效果,会使库难以使用。 |
|
资源字符串中的每个单词根据大小写被拆分为标记。 Microsoft 拼写检查器库会对由两个连续的标记构成的每个组合进行检查。 如果被识别,该单词将生成规则冲突。 |
|
资源字符串包含一个或多个未被 Microsoft 拼写检查器库识别的单词。 |
|
类型名称不应该与 .NET Framework 类库中定义的命名空间的名称匹配。 与该规则冲突将使库的可用性下降。 |
|
按照约定,标识符名称不包含下划线 (_) 字符。 该规则将检查命名空间、类型、成员和参数。 |
|
公共或受保护成员的名称以“Get”开头,且其余部分与公共或受保护属性的名称匹配。" “Get”方法和属性的名称应当能够明确表示其功能。 |
|
某个命名空间名称或类型名称与编程语言中的保留关键字相同。 命名空间和类型的标识符不应与针对公共语言运行时的语言所定义的关键字冲突。 |
|
在外部可见的标识符的名称中,包括一个存在首选备用词条的词条。 或者,名称中包含“Flag”或“Flags”一词。 |
|
按照约定,参数名使用 Camel 大小写,命名空间、类型和成员名称使用 Pascal 大小写。 |
|
标识符的名称包含多个单词,其中至少有一个单词似乎是大小写不正确的组合词。 |
|
枚举成员的名称不能以类型名称作为前缀,因为类型信息将由开发工具提供。 |
|
按照约定,扩展某些基类型或实现某些接口的类型的名称,或者由这些类型派生的类型的名称应具有与相应基类型或接口关联的后缀。 |