CA1308: Normalizzare le stringhe in lettere maiuscole

Proprietà valore
ID regola CA1308
Titolo Normalizzare le stringhe in lettere maiuscole
Categoria Globalizzazione
Correzione che causa un'interruzione o un'interruzione Nessuna interruzione
Abilitato per impostazione predefinita in .NET 8 No

Causa

Un'operazione normalizza una stringa in lettere minuscole.

Descrizione regola

Le stringhe devono essere normalizzate in maiuscolo. Un piccolo gruppo di caratteri, quando vengono convertiti in lettere minuscole, non può effettuare un round trip. Per eseguire un round trip significa convertire i caratteri da un'impostazione locale a un'altra che rappresenta i dati di tipo carattere in modo diverso e quindi recuperare in modo accurato i caratteri originali dai caratteri convertiti.

Come correggere le violazioni

Modificare le operazioni che convertono le stringhe in lettere minuscole in modo che le stringhe vengano convertite in lettere maiuscole. Puoi ad esempio modificare String.ToLower(CultureInfo.InvariantCulture) in String.ToUpper(CultureInfo.InvariantCulture).

Quando eliminare gli avvisi

È possibile eliminare un avviso quando non si stanno prendendo decisioni di sicurezza in base al risultato della normalizzazione, ad esempio quando si visualizza il risultato nell'interfaccia utente.

Eliminare un avviso

Se si vuole eliminare una singola violazione, aggiungere direttive del preprocessore al file di origine per disabilitare e quindi riabilitare la regola.

#pragma warning disable CA1308
// The code that's violating the rule is on this line.
#pragma warning restore CA1308

Per disabilitare la regola per un file, una cartella o un progetto, impostarne la gravità none su nel file di configurazione.

[*.{cs,vb}]
dotnet_diagnostic.CA1308.severity = none

Per altre informazioni, vedere Come eliminare gli avvisi di analisi del codice.

Vedi anche