У меня есть метод, который возвращает IEnumerable<KeyValuePair<string, ArrayList>>
, но некоторые из вызывающих пользователей требуют, чтобы этот метод был словарем. Как можно преобразовать IEnumerable<KeyValuePair<string, ArrayList>>
в Dictionary<string, ArrayList>
, чтобы я мог использовать TryGetValue
?Воспроизведение словаря из IEnumerable <KeyValuePair <>>
метод:
public IEnumerable<KeyValuePair<string, ArrayList>> GetComponents()
{
// ...
yield return new KeyValuePair<string, ArrayList>(t.Name, controlInformation);
}
Вызывающий:
Dictionary<string, ArrayList> actual = target.GetComponents();
actual.ContainsKey("something");
Возможного дубликат? http://stackoverflow.com/questions/7850334/how-to-convert-ienumerable-of-keyvaluepairx-y-to-dictionary – Coolkau