C#


ROSLYN.GLOBALIZATION.CA1307 : Specify StringComparison for clarity (C#)

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

Summary

A string comparison operation uses a method overload that does not set a StringComparison parameter. It is recommended to use the overload with StringComparison parameter for clarity of intent. If the result will be displayed to the user, such as when sorting a list of items for display in a list box, specify 'StringComparison.CurrentCulture' or 'StringComparison.CurrentCultureIgnoreCase' as the 'StringComparison' parameter. If comparing case-insensitive identifiers, such as file paths, environment variables, or registry keys and values, specify 'StringComparison.OrdinalIgnoreCase'. Otherwise, if comparing case-sensitive identifiers, specify 'StringComparison.Ordinal'.

This check corresponds to Roslyn rule CA1307. For full rule details, see the Microsoft website: CA1307.

Properties

Class Name Specify StringComparison for clarity (C#)
Significance reliability
Mnemonic ROSLYN.GLOBALIZATION.CA1307
Categories None
Availability Available for C# only.
Enabling Checks for this warning class are disabled by default. To enable them, add the following WARNING_FILTER rule to the project configuration file.
WARNING_FILTER += allow class="Specify StringComparison for clarity (C#)"

Relevant Configuration File Parameters

The following configuration file parameters affect checks for this warning class.