[CSharp.net] sicheren Hashwert erzeugen

Pessner, Andreas csharp.net at glengamoi.com
Tue, 2 Nov 2004 08:01:28 +0100


Ich muß für meine Hashtable einen sicheren Hashwert erstellen.

Dieser besteht aus 2 Strings z.B.: Vorname, Nachname.

Bisher mache ich das so:

private string Vorname;
private string Nachname;

public int GetHash()
{
	return Vorname.GetHashCode() ^ Nachname.GetHashCode();
}

Leider kann das natürlich zu Fehlern führen.

z.B.:
Person1: 
Vorname = "Andreas"
Nachname = "Maier"

Person2:
Vorname = "Maier"
Nachname = "Andreas"

In dem Beispiel sollte der Hashwert beider Personen eigentlich derselbe =
sein - befürchte ich mal.

Gibt es da einen besseren Ansatz?