Hashtable 2 inhalte pro Key

Fridulin

Erfahrenes Mitglied
Hallo Leute,

ich habe mich mal ein wenig an Hashtables ran gemacht und habe inmoment ein kleines Problem. Es wird einmal der userName gespreichert und sender, zusätzlich soll noch die IP zum userName gespeichert werden.
Meine Frage wie kann man dies einmal hinzufügen in der Tabelle bzw. auslesen?

Hier wird die Hastable gefüllt
Code:
if(ok == "Eingeloggt")
			{
			sender.Name = userName;
			anzeigen(userName + " ist Online");
			Hash_clienten.Add(userName, sender);
			Hash_clienten.Add(userIP, sender); // hier weiß ich nicht wie man das macht
.....
			}

Und hier wird es ausgelesen:
Code:
 if (Hash_clienten.Contains(userName))
		{
			MessageBox.Show("benutzer da");
			sende_zurueck_zum_sender("Passwort falsch", sender);
			string test = Hash_clienten.Values.ToString();


			MessageBox.Show(test);
		}

Wäre schön wenn jemand eine Idee hat wie man das Bewerkstelligen kann.

Viele Grüße und vielen Dank
Fridulin

Edit: Oder wäre ds Beste einfach noch eine neue Tabelle zuerstellen und stats sender einfach die IP reinwerfen....
 
Zuletzt bearbeitet:

Norbert Eder

Erfahrenes Mitglied
Also, eine Hashtable ist eigentlich keine Tabelle, sondern eine Liste aus Key-Value-Paaren.

Das was du machen kannst ist folgendes:
Erstelle dir ein eigenes Objekt, welches den Sender + IP + sonstige notwendigen Daten hält und füge dies als Wert dem entsprechenden Key an. Wobei natürlich der gleiche Username nicht mehrfach vorhanden sein darf.

Zweitens, ein Hashtable.Values.ToString() ist sinnfrei. Die Eigenschaft Values liefert dir eine ICollection zurück, welche du mit MoveNext() durchlaufen kannst. Siehe dazu die entsprechende MSDN Dokumentation.
 

Fridulin

Erfahrenes Mitglied
Hallo,

vielen Dank für deine Hilfe.
Es hat wunderbar geklappt.

Auch dir schon einmal im vorraus frohe Weihnachten und einen guten Rutsch ins neue Jahr.
Fridulin
 

Neue Beiträge