foreach(BruteforceEntry be in Entries.Values)
{
if (be.AddedTimeRemove <= now)
Entries.Remove(be.IPAddress);
else if (be.Unbantime <= now && be.Unbantime.Day == DateTime.Now.Day)
Entries.Remove(be.IPAddress);
}
generado una excepción:Modificar un diccionario que estoy iteración a través de
Collection fue modificado; la operación de enumeración no se puede ejecutar.
Por alguna razón, ya no es así.
Sé que no puede eliminar algo, mientras lo itera de esta manera. Mi pregunta es: ¿cómo lo resuelvo?
Muchas gracias. Tengo 1 pregunta, ¿te gusta esto más que simplemente iterar a través de una copia, utilizando .ToList() ya que es una edición más pequeña. – Basser
@Basser: Bueno, para empezar, es probable que tenga una huella de memoria más pequeña. También se repite una única vez en toda la colección: la solución actual se repite una vez para crear la lista y luego itera sobre esa lista. No me malinterprete, funcionará ... prefiero este enfoque. –
Bueno, acabo de enterarme que un usuario de SO superior respondió mi pregunta, ¡por eso pensé que podría preguntarle! ¡Supongo que usaré este método, ya que estás en lo correcto! Gracias de nuevo. Todavía no soy muy bueno con las colecciones, sigo aprendiendo. – Basser