Comment mettre à jour C# hashtable dans une boucle?

Je suis en train de mettre à jour une table de hachage dans une boucle, mais d'avoir une erreur: System.InvalidOperationException: Collection a été modifiée; opération d'énumération peut pas s'exécuter.

private Hashtable htSettings_m = new Hashtable();
htSettings_m.Add("SizeWidth", "728");
htSettings_m.Add("SizeHeight", "450");
string sKey = "";
string sValue = "";
foreach (DictionaryEntry deEntry in htSettings_m)
{
    //Get value from Registry and assign to sValue.
    //...
    //Change value in hashtable.
    sKey = deEntry.Key.ToString();
    htSettings_m[sKey] = sValue;
}

Est-il moyen de contourner cela, ou peut-être il y a une meilleure structure de données à de telles fins?

Croire que c'est une dup question, voir: stackoverflow.com/questions/287195/...

OriginalL'auteur z-boss | 2008-11-28