This may be novel or really dumb, but I like it. Say you want to convert a Dictionary to a List of KeyValuePairs that are sorted by something within the dictionary Key or Value. Don’t ask why, just go with it. You could do this:
Where someDictionary is Dictionary<Type, string> :
List<KeyValuePair<Type, String>> dataSource = new List<KeyValuePair<Type, String>>(someDictionary); dataSource.Sort(new SomeComparer<KeyValuePair<Type, String>>("Value", true));
var query = from keyValuePair in someDictionary orderby keyValuePair.Value select new KeyValuePair<Type, String>(keyValuePair.Key, keyValuePair.Value); SomeMethod(query.ToList());
If nothing else, you don’t have to create or implement a System.Collections.IComparer class to use the .Sort method. That seems worth it. That and I think it just plain looks better, but that just me. If I am completely wrong here, refer to the title of this post. Just a thought really.