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

System.Attribute

Atributo

System.EventArgs

EventArgs

System.Exception

Exceção

System.Collections.ICollection

Coleção

System.Collections.IDictionary

Dicionário

System.Collections.IEnumerable

Coleção

System.Collections.Queue

Coleção ou fila

System.Collections.Stack

Pilha ou coleção

System.Collections.Generic.ICollection<T>

Coleção

System.Collections.Generic.IDictionary<TKey, TValue>

Dicionário

System.Data.DataSet

DataSet

System.Data.DataTable

Coleção ou DataTable

System.IO.Stream

Fluxo

System.Security.IPermission

Permissão

System.Security.Policy.IMembershipCondition

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

Consulte também

Conceitos

Eventos e representantes

Referência

Diretrizes de uso do atributo