Chaîne de format non valide (IDE0043)

Propriété Value
Identificateur de la règle IDE0043
Titre Chaîne de format non valide
Catégorie Style
Sous-catégorie Règles de langage (opérations de chaîne)
Langues applicables C# et Visual Basic
Options None

Aperçu

Cette règle signale les appels aux méthodes de mise en forme composites, telles que String.Format, où un index d’espace réservé dans la chaîne de format fait référence à un argument qui n’existe pas. Par exemple, si la chaîne de format contient {1} mais qu’un seul argument est fourni (accessible en tant que {0}), la règle signale l’espace {1} réservé.

Note

Cette règle est similaire à la règle de qualité de code CA2241, qui valide également les arguments de chaîne de format.

Example

// Code with violations.
// '{1}' is out of range — only one argument is provided.
string s = string.Format("Hello, {0}! You have {1} messages.", "Alice");

// Fixed code.
string s = string.Format("Hello, {0}! You have {1} messages.", "Alice", 5);
' Code with violations.
' '{1}' is out of range — only one argument is provided.
Dim s As String = String.Format("Hello, {0}! You have {1} messages.", "Alice")

' Fixed code.
Dim s As String = String.Format("Hello, {0}! You have {1} messages.", "Alice", 5)

Supprimer un avertissement

Si vous souhaitez supprimer une seule violation, ajoutez des directives de préprocesseur à votre fichier source pour désactiver, puis réactivez la règle.

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

Pour désactiver la règle sur un fichier, un dossier ou un projet, définissez sa gravité sur none dans le fichier de configuration.

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

Pour désactiver toutes les règles de style de code, définissez la gravité de la catégorie Style sur none dans le fichier de configuration.

[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none

Pour plus d’informations, consultez Comment supprimer les avertissements d’analyse du code.

Voir aussi