Hallo zusammen,
ich verwende eine Dictionary.
Diese Dictionary ist von der Structur "tServer".
In der Structur "tServer" befindet sich wiederum eine Dictionary von der Structur "tComputer".
Der Aufbau von mehreren Einträgen auf der Ebenen "tServer" ist mir gelungen.
Auch der Aufbau von mehreren Einträgen auf der Ebene "tComputer" ist mir gelungen.
Jetzt mein Problem.
Wie kann ich die einzelnen Einträge der beiden Dictionary nachträglich bearbeiten.
Das Auslesen der Einträge ist nicht das Problem.
Beim zurückschreiben kommt der Fehler: "Die Sammlung wurde geändert".
Die "foreach" Schleife ist hierfür wahrscheinlich auch nicht geeignet, denke ich mal.
Aber wie geht das mit der "for" Schleife? Ich brauche doch 2 davon ineinander verschachtelt.
Vielen Dank.
Grüße von CopWorker
ich verwende eine Dictionary.
Diese Dictionary ist von der Structur "tServer".
In der Structur "tServer" befindet sich wiederum eine Dictionary von der Structur "tComputer".
Der Aufbau von mehreren Einträgen auf der Ebenen "tServer" ist mir gelungen.
Auch der Aufbau von mehreren Einträgen auf der Ebene "tComputer" ist mir gelungen.
Jetzt mein Problem.
Wie kann ich die einzelnen Einträge der beiden Dictionary nachträglich bearbeiten.
Das Auslesen der Einträge ist nicht das Problem.
Beim zurückschreiben kommt der Fehler: "Die Sammlung wurde geändert".
Die "foreach" Schleife ist hierfür wahrscheinlich auch nicht geeignet, denke ich mal.
Aber wie geht das mit der "for" Schleife? Ich brauche doch 2 davon ineinander verschachtelt.
C#:
public struct tServer
{
public string strNameInfo;
public Dictionary<string, tComputer> dicComputer;
}
public struct tComputer
{
public string strNameInfo;
public bool BConnected;
public string strMsg;
}
private Dictionary<string, tServer> dicServers = new Dictionary<string, tServer>();
public int MultiConnect(string strServer, string strComputer)
{
foreach (var server in dicServers)
{
if (server.Key == strServer || strServer == "")
{
sServer = server.Value;
strServerKey = server.Key;
foreach (var computer in sServer.dicComputer)
{
if (computer.Key == strComputer || strComputer == "")
{
sComputer = computer.Value;
strComputerKey = computer.Key;
sComputer.strMsg = "Verbindung wird hergestellt";
sServer.dicComputer[strComputerKey] = sComputer;
}
}
dicServers[strServerKey] = sServer;
}
}
}
Vielen Dank.
Grüße von CopWorker