Dictionnaire avec les deux clés?

Je suis à garder la trace des valeurs dans une console. Deux personnes "duel" les uns contre les autres et j'ai été en utilisant un dictionnaire de garder les noms enregistrés avec les dégâts infligés.

var duels = new Dictionary<string, string>();
duels.Add("User1", "50");
duels.Add("User2","34");

Je suis en train de stocker à la fois les utilisateurs dans le même dictionnaire ligne, de sorte qu'il peut être vérifié que User1 est duel contre User2. De cette façon, si un autre duel a commencé, il ne serait pas interférer avec User1 ou User2.

duels.Add("KeyUser1","KeyUser2","50","34",.../*Other attributes of the duel*/);

J'ai besoin de deux clés pour que je puisse vérifier où l'utilisateur des dommages de l'ira. Les dégâts de la volonté de toujours aller vers l'autre clé--vice-versa.
Que puis-je faire pour faire ce travail?

Merci.

Je recommande l'utilisation de n-uplets pour cela. Voici un article qui pourrait vous conduire dans la bonne direction: stackoverflow.com/questions/1171812/multi-key-dictionary-in-c . Bonne chance!
Un utilisateur engagé dans plus d'un duel à la fois?
Est le duel impliquant "User1" et "User2" différents que le duel impliquant "User2" et "User1" ?
Non, ils cannot.@David B non, pas différent. Les Duels contre les 2 personnes sont interchangeables.
N-uplet peut appliquer, vous devez initialiser au début mais pas à gonfler au dernier moment.

OriginalL'auteur Kyle | 2012-02-27