Verwenden Sie Byte [] als Schlüssel im Wörterbuch
Ich muss ein verwendenbyte[]
als Schlüssel in aDictionary
. Schon seitbyte[]
überschreibt nicht die StandardeinstellungGetHashCode
Methode, zwei getrenntebyte[]
Objekte, die dieselben Daten enthalten, verwenden zwei separate Slots im Wörterbuch. Grundsätzlich möchte ich Folgendes:
Dictionary<byte[], string> dict = new Dictionary<byte[], string>();
dict[new byte[] {1,2,3}] = "my string";
string str = dict[new byte[] {1,2,3}];
// I'd like str to be set to "my string" at this point
Gibt es eine einfache Möglichkeit, dies zu tun? Das einzige, was ich mir vorstellen kann, wäre, eine Wrapper-Klasse zu erstellen, die nur a enthältbyte[]
und überschreibenGetHashCode
basierend auf den inhalten derbyte[]
, aber das scheint fehleranfällig.