Para remover um item de uma colecção, nada mais do que
List<string> s = new List<string>() { “1″, “2″ };
s.Remove(“1″);
Mas quando usamos a colecção dentro de um ciclo e queremos remover o item que está carregado actualmente, podemos ser surpreendidos com uma excepção do tipo “Collection was modified; enumeration operation may not execute”.
List<string> s = new List<string>() { “1″, “2″ };
foreach (string ss in s)
{
s.Remove(ss);
}
Para contornar este erro, e eliminar todos os items que pretendemos durante o ciclo, basta a seguinte alteração ao código
List<string> s = new List<string>() { “1″, “2″ };
foreach (string ss in new List<string>(s))
{
s.Remove(ss);
}
Filed under: Uncategorized | 1 Comment
Tags: .net, microsoft, dev, dotnet, dicas
Procurar
-
Encontra-se de momento a explorar os arquivos oito ... do weblog
Bem visto.