CA1721: os nomes de propriedade não devem corresponder a métodos get
TypeName |
PropertyNamesShouldNotMatchGetMethods |
CheckId |
CA1721 |
Categoria |
Microsoft.Naming |
Alteração Significativa |
Quebra |
Causa
O nome de um público ou inicia protegidos do membro com “e” correspondem a obtenção de outra forma o nome de um público ou de uma propriedade protegida.Por exemplo, um tipo que contém um método denominado” e “GetColor uma propriedade chamada “cor” viola a regra.
Descrição da Regra
Obter métodos e as propriedades devem ter nomes que distinguem claramente a função.
Convenções de nomenclatura dão uma aparência comum para bibliotecas que tem como foco o common language runtime.Isso reduz o tempo necessário para obter uma nova biblioteca de software, e aumenta a confiança da biblioteca cliente que esteve desenvolvida por alguém que tiver experiência em código gerenciado desenvolvendo.
Como Corrigir Violações
Alterar o nome de modo que não corresponde ao nome de um método que é prefixado com “obtenham”.
Quando Suprimir Alertas
Não elimine um alerta desta regra.
Observação |
---|
Esse aviso pode ser excluído se o método obter é causado implementando a interface de IExtenderProvider. |
Exemplo
O exemplo a seguir contém um método e uma propriedade que diminui a regra.
Imports System
Namespace NamingLibrary
Public Class Test
Public ReadOnly Property [Date]() As DateTime
Get
Return DateTime.Today
End Get
End Property
' Violates rule: PropertyNamesShouldNotMatchGetMethods.
Public Function GetDate() As String
Return Me.Date.ToString()
End Function
End Class
End Namespace
using System;
namespace NamingLibrary
{
public class Test
{
public DateTime Date
{
get { return DateTime.Today; }
}
// Violates rule: PropertyNamesShouldNotMatchGetMethods.
public string GetDate()
{
return this.Date.ToString();
}
}
}