Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
| Proprietà | Valore |
|---|---|
| Regola ID | IDE0220 |
| Titolo | Aggiungere cast esplicito |
| categoria | Stile |
| sottocategoria | Regole del linguaggio (preferenze a livello di espressione) |
| lingue applicabili | C# |
| Opzioni | dotnet_style_prefer_foreach_explicit_cast_in_source |
Panoramica
Questa regola contrassegna l'assenza di un cast esplicito in un ciclo foreach quando il compilatore aggiunge un cast nascosto. Per le raccolte generiche o fortemente tipizzate, forzare un cast esplicito quando il compilatore aggiungerebbe un cast nascosto può rivelare l'uso di un tipo errato nell'istruzione foreach.
Opzioni
Le opzioni specificano il comportamento che desideri venga applicato dalla regola. Per informazioni sulla configurazione delle opzioni, vedere Formato opzione.
dotnet_style_prefer_foreach_explicit_cast_in_source
| Proprietà | Valore | Descrizione |
|---|---|---|
| nome opzione | dotnet_style_prefer_foreach_explicit_cast_in_source | |
| Valori delle opzioni | always |
Preferisce cast espliciti nel codice sorgente. |
when_strongly_typed |
Preferisce cast espliciti per raccolte fortemente tipate (generiche), ma non per le raccolte legacy, ad esempio ArrayList. | |
| valore di opzione predefinito | when_strongly_typed |
Esempio
// 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>())
Eliminare un avviso
Se si desidera eliminare solo una singola violazione, aggiungere direttive del preprocessore al file di origine per disabilitare e quindi riabilitare la regola.
#pragma warning disable IDE0220
// The code that's violating the rule is on this line.
#pragma warning restore IDE0220
Per disabilitare la regola per un file, una cartella o un progetto, impostarne la gravità su none nel file di configurazione .
[*.{cs,vb}]
dotnet_diagnostic.IDE0220.severity = none
Per disabilitare tutte le regole di tipo codice, impostare la gravità per la categoria Style su none nel file di configurazione .
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Per altre informazioni, vedere Come eliminare gli avvisi di analisi del codice.