CA2121: Os construtores estáticos devem ser particulares
TypeName |
StaticConstructorsShouldBePrivate |
CheckId |
CA2121 |
<strong>Categoria</strong> |
Microsoft.Security |
Alteração significativa |
Quebrando |
Causa
Um tipo tem um construtor estático que não é particular.
Descrição da regra
Um construtor estático, também conhecido como um construtor de classe é usado para inicializar um tipo.O sistema chama o construtor estático antes da primeira instância do tipo é criada ou quaisquer membros estáticos são referenciados.O usuário não tem controle sobre quando o construtor estático é chamado.Se um construtor estático não é particular, pode ser chamado pelo código diferente do sistema.Dependendo das operações realizadas no construtor, isso pode causar um comportamento inesperado.
Essa regra é imposta pelo C# e Visual Basic.NET compiladores.
Como corrigir violações
Violações normalmente são causadas por uma das seguintes ações:
Você definido um construtor estático para o seu tipo e não fazerem isso particular.
O compilador da linguagem de programação adicionado um construtor estático do padrão para seu tipo e não fazerem isso particular.
Para corrigir o primeiro tipo de violação, torne seu construtor estático particulares.Para corrigir o segundo tipo, adicione um construtor estático privado para seu tipo.
Quando suprimir avisos
Não suprimir essas violações.Se o projeto de software requer uma chamada explícita para um construtor estático, é provável que o projeto contém falhas graves e deve ser revisado.