Identificadores devem ter o correto sufixo
TypeName |
IdentifiersShouldHaveCorrectSuffix |
CheckId |
CA1710 |
Category (Categoria) |
Microsoft.Naming |
Quebrando alterar |
Quebrando |
Causa
Um identificador não possui o sufixo correto.
Descrição da regra
Por convenção, os nomes de tipos que estender certos tipos base ou que implementam certas interfaces ou tipos derivados desses tipos tem um sufixo que está associado com o tipo de base ou interface.
Convenções de nomenclatura fornecem uma aparência comum para bibliotecas de destino o common linguagem tempo de execução.Isso reduz a curva de aprendizado necessária para novas bibliotecas de software e aumenta a confiança do cliente que a biblioteca foi desenvolvida por uma pessoa com experiência em desenvolvimento de código gerenciado.
A tabela a seguir lista os tipos base e interfaces que associou sufixos.
Interface/tipo de base |
Sufixo |
---|---|
Atributo |
|
EventArgs |
|
Exceção |
|
Coleção |
|
Dicionário |
|
Coleção |
|
Coleção ou fila |
|
Pilha ou coleção |
|
Coleção |
|
Dicionário |
|
DataSet |
|
Coleção ou DataTable |
|
Fluxo |
|
Permissão |
|
Condição |
|
Um delegado manipulador de eventos. |
EventHandler |
Tipos que implementam ICollection, e são um tipo generalizado de estrutura de dados, tais sistema autônomo um dicionário, pilha ou fila, são permitidos nomes que fornecem informações significativas para o uso pretendido do tipo.
Tipos que implementam ICollection, e são uma coleção de itens específicos, têm nomes que terminam com a palavra 'Conjunto'. Por exemplo, uma coleção de Queue objetos teria o nome 'QueueCollection'. O sufixo 'Conjunto' significa que os membros da coleção podem ser enumerados usando o foreach (For Each no Visual Basic) demonstrativo.
Tipos que implementam IDictionary têm nomes que terminam com a palavra 'Dicionário', mesmo se o tipo também implementa IEnumerable ou ICollection. O ' coleção ' e convenções de nomes de sufixo 'Dicionário' permitir que os usuários distinguir entre os seguintes padrões de enumeração de dois.
Tipos com o ' coleção ' sufixo seguem esse padrão de enumeração:
foreach(SomeType x in SomeCollection) { }
Tipos com o sufixo 'Dicionário' execute esse padrão de enumeração:
foreach(SomeType x in SomeDictionary.Values) { }
A DataSet objeto consiste em uma coleção de DataTable objetos, que consistem em coleções de System.Data.DataColumn e System.Data.DataRow objetos, entre outros. Essas coleções implementam ICollection por meio de base System.Data.InternalDataCollectionBase classe.
Como corrigir violações
Renomear o tipo de modo que é sufixado com o termo correto.
Quando suprimir avisos
É seguro eliminar um aviso para usar o sufixo 'Conjunto' se o tipo é uma estrutura de dados generalizado que podem ser estendidos ou que manterá um conjunto arbitrário de diversos itens.Nesse caso, um nome que fornece informações significativas sobre a implementação, desempenho ou outras características da estrutura de dados pode fazer sentido (por exemplo, BinaryTree).Em casos onde o tipo representa uma coleção de um tipo específico (por exemplo, StringCollection), não eliminar um aviso esta regra porque o sufixo indica que o tipo pode ser enumerado com um foreach demonstrativo.
Para outros sufixos não suprimir um aviso da regra.O sufixo permite o uso pretendido seja aparente do nome do tipo.
Regras relacionadas
Identificadores não devem ter o sufixo incorreto