"Collection was modified; enumeration operation may not execute " Why this error is coming when execute my below code:
This is my Window Form Application in .Net
1.I am using a Global class for reading instance message and shown it to a Textbox
2.It is executing fine but some time showing error like "Collection was modified; enumeration operation may not execute " in second foreach looping like
foreach (var values in dict[item])
{
3. My global Class is in which i am storing value in Dictionary object and retrived from that .
public static class GlobalVariables
{
public static Dictionary<string,>> dictionary = new Dictionary<string,>>();
public static void SetMessage(String DBName, String Message)
{
if (dictionary.ContainsKey(DBName))
{
List<string> list = new List<string>();
list.Clear();
list.Add(Message);
dictionary[DBName]=list;
}
else
{
List<string> list = new List<string>();
list.Add(DateTime.Now.ToString());
dictionary.Add("Process Started",list);
}
}
}
4.Here we can show the message in textbox from Dictionary object and error shown in the second foreach line like
foreach (var values in dict[item])
{
public void setTextBoxValue()
{
Dictionary<string, List<string>> dict = GlobalVariables.dictionary;
if (dict.Keys.Count > 0)
{
builder.Remove(0, builder.Length);
foreach (var item in dict.Keys)
{
foreach (var values in dict[item])
{
string message = item + ":" + values.ToString();
builder.AppendLine(message);
builder.Append("\n\n");
textBox1.Text = builder.ToString();
}
}
Application.DoEvents();
}
}