Convert dictionary to List<KeyValuePair>
To convert a Dictionary<TKey, TValue>
to a List<KeyValuePair<TKey, TValue>>
you can just say
var list = dictionary.ToList();
or the more verbose
var list = dictionary.ToList<KeyValuePair<TKey, TValue>>();
This is because Dictionary<TKey, TValue>
implements IEnumerable<KeyValuePair<TKey, TValue>>
.
Using linq:
myDict.ToList<KeyValuePair<double, double>>();
Dictionary elements are KeyValuePair
items.
Like Jason said. But if you don't really need a list, then you can just cast it to an ICollection<TKey, TValue>
; because it implements this interface, but some parts only explicitly. This method performs better because it don't copy the entire list, just reuses the same dictionary instance.