Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
| Property | Value |
|---|---|
| Regel-ID | IDE0043 |
| Title | Ongeldige notatietekenreeks |
| Categorie | Style |
| Subcategorie | Taalregels (tekenreeksbewerkingen) |
| Toepasselijke talen | C# en Visual Basic |
| Options | Geen |
Overview
Deze regel markeert aanroepen van samengestelde opmaakmethoden, zoals String.Format, waarbij een tijdelijke aanduidingsindex in de notatietekenreeks verwijst naar een argument dat niet bestaat. Als de indelingsreeks bijvoorbeeld {1} bevat, maar er slechts één argument wordt opgegeven (beschikbaar als {0}), markeert de regel de plaatshouder {1}.
Note
Deze regel is vergelijkbaar met de codekwaliteitsregel CA2241, waarmee ook tekenreeksargumenten worden gevalideerd.
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)
Een waarschuwing onderdrukken
Als u slechts één schending wilt onderdrukken, voegt u preprocessorrichtlijnen toe aan uw bronbestand om de regel uit te schakelen en vervolgens opnieuw in te schakelen.
#pragma warning disable IDE0043
// The code that's violating the rule is on this line.
#pragma warning restore IDE0043
Als u de regel voor een bestand, map of project wilt uitschakelen, stelt u de ernst ervan in op none in het configuratiebestand.
[*.{cs,vb}]
dotnet_diagnostic.IDE0043.severity = none
Als u alle regels voor de codestijl wilt uitschakelen, stelt u de ernst voor de categorie Style in op none in het configuratiebestand.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Zie Hoe u codeanalysewaarschuwingen kunt onderdrukken voor meer informatie.