Expliciete cast toevoegen in foreach-loop (IDE0220)
Eigenschap | Waarde |
---|---|
Regel-ID | IDE0220 |
titel | Expliciete cast toevoegen |
categorie | Stijl |
Subcategorie | Taalregels (voorkeuren op expressieniveau) |
Toepasselijke talen | C# |
opties | dotnet_style_prefer_foreach_explicit_cast_in_source |
Deze regel markeert het ontbreken van een expliciete cast in een foreach
lus wanneer de compiler een verborgen cast toevoegt. Voor generieke of sterk getypte verzamelingen kan het afdwingen van een expliciete cast, wanneer de compiler een verborgen cast zou toevoegen, het gebruik van een onjuist type uit de foreach
-instructie aan het licht brengen.
Met opties geeft u het gedrag op dat door de regel moet worden afgedwongen. Zie Option-indelingvoor meer informatie over het configureren van opties.
Eigenschap | Waarde | Beschrijving |
---|---|---|
optienaam | dotnet_style_prefer_foreach_explicit_cast_in_source | |
optiewaarden | always |
Geef de voorkeur aan expliciete casts in broncode. |
when_strongly_typed |
Geef de voorkeur aan expliciete casts voor sterk getypeerde (algemene) verzamelingen, maar niet voor verouderde verzamelingen, zoals ArrayList. | |
standaardoptiewaarde | when_strongly_typed |
// Code with violations.
var list = new List<object>();
foreach (string item in list) { }
// Fixed code.
var list = new List<object>();
foreach (string item in list.Cast<string>())
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 IDE0220
// The code that's violating the rule is on this line.
#pragma warning restore IDE0220
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.IDE0220.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
Voor meer informatie, zie Hoe u codeanalysewaarschuwingen kunt onderdrukken.
.NET-feedback
.NET is een open source project. Selecteer een koppeling om feedback te geven: