CA1308: Normalizar cadeias de caracteres para maiúsculas
Propriedade | valor |
---|---|
ID da regra | CA1308 |
Cargo | Normalizar cadeias de caracteres para maiúsculas |
Categoria | Globalização |
A correção está quebrando ou não quebrando | Sem quebra |
Habilitado por padrão no .NET 8 | Não |
Causa
Uma operação normaliza uma cadeia de caracteres para minúsculas.
Descrição da regra
As cadeias de caracteres devem ser normalizadas para maiúsculas. Um pequeno grupo de caracteres, quando são convertidos em minúsculas, não pode fazer uma viagem de ida e volta. Fazer uma viagem de ida e volta significa converter os caracteres de uma localidade para outra localidade que representa os dados de caracteres de forma diferente e, em seguida, recuperar com precisão os caracteres originais dos caracteres convertidos.
Como corrigir violações
Altere as operações que convertem cadeias de caracteres em minúsculas para que as cadeias de caracteres sejam convertidas em maiúsculas. Por exemplo, altere String.ToLower(CultureInfo.InvariantCulture)
para String.ToUpper(CultureInfo.InvariantCulture)
.
Quando suprimir avisos
É seguro suprimir um aviso quando você não está tomando decisões de segurança com base no resultado da normalização (por exemplo, quando você está exibindo o resultado na interface do usuário).
Suprimir um aviso
Se você quiser apenas suprimir uma única violação, adicione diretivas de pré-processador ao seu arquivo de origem para desativar e, em seguida, reativar a regra.
#pragma warning disable CA1308
// The code that's violating the rule is on this line.
#pragma warning restore CA1308
Para desabilitar a regra para um arquivo, pasta ou projeto, defina sua severidade como none
no arquivo de configuração.
[*.{cs,vb}]
dotnet_diagnostic.CA1308.severity = none
Para obter mais informações, consulte Como suprimir avisos de análise de código.