Многоключевой словарь C# и TryGetValueC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Многоключевой словарь C# и TryGetValue

Сообщение Anonymous »


Я пытаюсь создать словарь с двумя ключами, так как это кажется лучшей идеей, чем создание двух словарей с одинаковым значением. Я хочу получить значение с помощью одного из двух ключей, то есть, если один из двух ключей совпадает, он возвращает значение. Я также увидел, что могу добавить в словарь 2 элемента с разными ключами, но одинаковым значением

Я написал этот код, но хочу знать, есть ли более эффективный способ сделать это... Или есть другой лучший способ получить то, что я хочу, без использования многоключевого словаря
public bool TryGetValue (выходное значение TValue, TKey1 key1 = по умолчанию, TKey2 key2 = по умолчанию) { значение = по умолчанию; if (EqualityComparer.Default.Equals(key1, default) && EqualityComparer.Default.Equals(key2, default)) вернуть ложь; foreach (в этом пара var) { if ((EqualityComparer.Default.Equals(key1, default) || пара.Key.Item1.Equals(key1)) && (EqualityComparer.Default.Equals(key2, default) || пара.Key.Item2.Equals(key2))) { значение = пара.Значение; вернуть истину; } } вернуть ложь; }
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»