Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
| Propriedade | Valor |
|---|---|
| ID da regra | IDE0220 |
| Título | Adicionar transmissão explícita |
| Categoria | Estilo |
| Subcategoria | Regras de idioma (preferências no nível da expressão) |
| Idiomas aplicáveis | C# |
| Opções | dotnet_style_prefer_foreach_explicit_cast_in_source |
Visão geral
Esta regra sinaliza a ausência de uma conversão explícita num loop foreach quando o compilador adicionaria uma conversão oculta. Para coleções genéricas ou fortemente tipadas, forçar uma conversão explícita quando o compilador adicionaria uma conversão implícita pode revelar o uso de um tipo incorreto na declaração foreach.
Opções
As opções especificam o comportamento que você deseja que a regra imponha . Para obter informações sobre como configurar opções, consulte Formato de opção.
dotnet_style_prefer_foreach_explicit_cast_in_source
| Propriedade | Valor | Descrição |
|---|---|---|
| Nome da opção | Preferência_de_estilo_dotnet_para_foreach_com_cast_explícito_no_fonte | |
| Valores de opção | always |
Prefira casts explícitos no código-fonte. |
when_strongly_typed |
Prefira moldes explícitos para coleções fortemente tipadas (genéricas), mas não para coleções legadas, como ArrayList. | |
| Valor da opção padrão | when_strongly_typed |
Exemplo
// 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>())
Suprimir um aviso
Se você quiser suprimir apenas uma única violação, adicione diretivas de pré-processador ao arquivo de origem para desativar e, em seguida, reativar a regra.
#pragma warning disable IDE0220
// The code that's violating the rule is on this line.
#pragma warning restore IDE0220
Para desabilitar a regra para um arquivo, pasta ou projeto, defina sua gravidade como none no arquivo de configuração .
[*.{cs,vb}]
dotnet_diagnostic.IDE0220.severity = none
Para desabilitar todas as regras de estilo de código, defina a severidade da categoria Style como none no arquivo de configuração .
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Para obter mais informações, consulte Como suprimir avisos de análise de código.
Ver também
- Tipos de coleção mais usados
- de referência de regras de estilo de código