CA1515: Considere tornar os tipos públicos internos
Propriedade | Valor |
---|---|
ID da regra | CA1515 |
Título | Considere tornar os tipos públicos internos |
Categoria | Facilidade de manutenção |
Correção interruptiva ou sem interrupção | Sem interrupção |
Habilitado por padrão no .NET 8 | Não |
Causa
Um tipo dentro de um assembly executável é declarado como público.
Descrição da regra
Ao contrário de uma biblioteca de classes, a API de um aplicativo normalmente não é referenciada publicamente, portanto, os tipos podem ser marcados como internal
.
Os tipos internos, por sua vez, podem se beneficiar de vários analisadores de código destinados a APIs não públicas.
Como corrigir violações
Marque o tipo como internal
.
Exemplo
O seguinte snippet de código mostra uma violação da CA1515:
// Inside a project with <OutputKind>Exe</OutputKind>
public class Program
{
public static void Main(string[] args)
{
}
}
Public Class Program
Public Shared Sub Main(args As string())
End Sub
End Class
O seguinte snippet de código conserta a violação:
// Inside a project with <OutputKind>Exe</OutputKind>
internal class Program
{
public static void Main(string[] args)
{
}
}
Friend Class Program
Public Shared Sub Main(args As string())
End Sub
End Class
Quando suprimir avisos
Será seguro suprimir uma violação dessa regra se você não estiver preocupado com a manutenção do código.
Suprimir um aviso
Para suprimir apenas uma violação, adicione diretivas de pré-processador ao arquivo de origem a fim de desabilitar e, em seguida, reabilitar a regra.
#pragma warning disable CA1515
// The code that's violating the rule is on this line.
#pragma warning restore CA1515
Para desabilitar a regra em um arquivo, uma pasta ou um projeto, defina a severidade como none
no arquivo de configuração.
[*.{cs,vb}]
dotnet_diagnostic.CA1515.severity = none
Para obter mais informações, confira Como suprimir avisos de análise de código.