CA1308: Normalizujte řetězce na velká písmena

Vlastnost Hodnota
ID pravidla CA1308
Název Normalizujte řetězce na formát velkých písmen
Kategorie Globalizace
Oprava, která může být destruktivní nebo nedestruktivní Nezlomitelný
Povoleno ve výchozím nastavení v .NET 10 Ne
Příslušné jazyky C# a Visual Basic

Příčina

Operace normalizuje řetězec na malá písmena.

Popis pravidla

Řetězce by měly být normalizovány na velká písmena. Když se malá skupina znaků převede na malá písmena, nemůže se vrátit zpět. Chcete-li provést kompletní cyklus převodu, znamená to převést znaky z jednoho národního prostředí na jiné, které data znaků reprezentuje odlišně, a poté přesně načíst původní znaky z převedených znaků.

Jak opravit porušení

Změňte operace, které převádějí řetězce na malá písmena, tak aby se řetězce místo toho převáděly na velká písmena. Například změňte String.ToLower(CultureInfo.InvariantCulture) na String.ToUpper(CultureInfo.InvariantCulture).

Kdy potlačit upozornění

Upozornění je bezpečné potlačit, když nepřijmete rozhodnutí o zabezpečení na základě výsledku normalizace (například při zobrazení výsledku v uživatelském rozhraní).

Potlačení upozornění

Pokud chcete pouze potlačit jedno porušení, přidejte do zdrojového souboru direktivy preprocesoru, abyste pravidlo zakázali a znovu povolili.

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

Pokud chcete pravidlo pro soubor, složku nebo projekt zakázat, nastavte jeho závažnost v none konfiguračním souboru.

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

Další informace naleznete v tématu Jak potlačit upozornění analýzy kódu.

Viz také