This documentation is archived and is not being maintained.

Avoid language specific type names in parameters

Visual Studio 2005

TypeName

AvoidLanguageSpecificTypeNamesInParameters

CheckId

CA1718

Category

Microsoft.Naming

Breaking Change

Breaking

The name of a parameter in an externally visible member contains a language-specific type name.

Each concatenated word in the parameter name is checked against the following language-specific type names, in a case-insensitive manner:

  • bool

  • float

  • float32

  • float64

  • int

  • int8

  • integer

  • long

  • short

  • uint

  • ulong

  • unsigned

  • ushort

  • wchar

Language-specific type names might not be intuitive for developers using other languages. If a type name must be used, use a universal type name instead of a language-specific type name. For example, instead of the C# type name 'ushort', use the universal type name, UInt16.

Select a parameter name that does not contain one of the previously listed type names.

For new development, there are no known scenarios where it is necessary to exclude a warning from this rule. For shipping libraries, it might be necessary to exclude a warning from this rule.

Show: