Мне нужен составной ключ (две строки) в качестве значения для словаря. Я думал, что могу использовать Tuple<string,string>
для этого, но, как я понимаю, словарь выполнит контрольную проверку равенства, и я бы никогда не получил совпадение.Условное равенство для словаря
Что я могу сделать, чтобы выполнить фактическое сравнение строк?
Вот что я получил:
protected Dictionary<Tuple<string, string>, WopiSession> _sessions;
...
var sessionKey = new Tuple<string, string>(accessToken, fileToken);
WopiSession session;
if (!_sessions.TryGetValue(sessionKey, out session))
{
session = new WopiSession();
_sessions.Add(sessionKey, session);
}
Почему вы не попробовали? – poke
@poke Я собираюсь ... это сложная программа. Это будет еще час или около того, прежде чем я смогу проверить это. Я знал, что кто-то здесь будет отвечать от головы, но почему бы не спросить, прежде чем идти по неправильному пути? – mpen
Возможный дубликат [Tuples (или массивов) в качестве словарных ключей в C#] (http://stackoverflow.com/questions/955982/tuples-or-arrays-as-dictionary-keys-in-c-sharp) – poke