Вместо использования списка KeyValuePair вы можете использовать
Dictionary <string, int> dictionary = new Dictionary <string, int> ().
Для поиска в нашей коллекции мы будем использовать оператор First, а еще лучше использовать оператор FirstOrDefault. Почему? Описание ниже. Поиск с помощью оператора выполняется намного быстрее, потому что коллекция просматривается поэлементно до первого встреченного элемента, удовлетворяющего условию. В то время как оператор Where выполняет поиск по всей коллекции.
Теперь мы добавляем новую запись в словарь, ключ должен быть уникальным (это не могут быть две записи с одним и тем же ключом).
Например, давайте добавим несколько записей в коллекцию.
dictionary.Add ("one", 1);
dictionary.Add ("two", 2);
dictionary.Add ("three", 3);
Теперь с помощью LINQ можно очень просто и быстро получить интересующий нас элемент. Затем мы можем искать ключевой элемент, потому что мы знаем, что он уникален. Есть два способа:
Первый способ гарантирует, что нам не будет возвращено исключение при отсутствии элемента поиска (например, Key = "четыре"). Результатом будет пустой ключ и значение 0.
KeyValuePair <string, int> results = dictionary.FirstOrDefault (v => v.Key.Equals ("two"));
Второй способ может выдать ошибку, когда элемент поиска отсутствует в коллекции.
KeyValuePair <string, int> results = dictionary.First (v => v.Key.Equals ("two"));
Теперь вы можете получить значения:
string key = results.Key;
int value = results.Value;
person
elcudro
schedule
15.10.2015