C#


ROSLYN.PERFORMANCE.CA1862 : Use the 'StringComparison' method overloads to perform case-insensitive string comparisons (C#)

See Roslyn-Detected C# Warning Classes for more information.

要旨

Avoid calling 'ToLower', 'ToUpper', 'ToLowerInvariant' and 'ToUpperInvariant' to perform case-insensitive string comparisons because they lead to an allocation. Instead, prefer calling the method overloads of 'Contains', 'IndexOf' and 'StartsWith' that take a 'StringComparison' enum value to perform case-insensitive comparisons. Switching to using an overload that takes a 'StringComparison' might cause subtle changes in behavior, so it's important to conduct thorough testing after applying the suggestion. Additionally, if a culturally sensitive comparison is not required, consider using 'StringComparison.OrdinalIgnoreCase'.

この指摘はRoslynのCA1862に該当します。ルール詳細につい ては、下記リンクを参照してください。 CA1862

プロパティ

クラス名 Use the 'StringComparison' method overloads to perform case-insensitive string comparisons (C#)
日本語クラス名 Use the 'StringComparison' method overloads to perform case-insensitive string comparisons (C#)
クラス分類 信頼性 (reliability)
ニーモニック ROSLYN.PERFORMANCE.CA1862
カテゴリー なし
対応言語 C# で利用可能です。
有効/無効設定 このワーニングクラスのチェックはデフォルトで有効になっています。チェックを無効にするにはプロジェクト設定ファイル (configuration file)に以下の WARNING_FILTER ルールを追加してください。
WARNING_FILTER += discard class="Use the 'StringComparison' method overloads to perform case-insensitive string comparisons (C#)"

関連のある設定ファイルパラメータ

設定ファイルの以下のパラメータがこのワーニングクラスのチェックに影響します。