In this post I will give an example how to cast a GenericList to Dictionary. This example will use the following Blogger class.
public class Blogger {
public string FirstName {
get;
set;
}
public string LastName {
get;
set;
}
public int Age {
get;
set;
}
public string Blog {
get;
set;
}
}
The example will cast a List<Blogger> to a dictionary with key FirstName, Lastname and value the Age of the blogger.
// DECLARE PERSONLIST List personList = new List(); personList.Add(new Blogger { FirstName = "Pieter", LastName = "Brinkman", Age = 27, Blog = "http://blog.newguid.net" }); personList.Add(new Blogger { FirstName = "Mark", LastName = "van Aalst", Age = 26, Blog = "http://www.markvanaalst.com/" }); personList.Add(new Blogger { FirstName = "Bas", LastName = "Hammendorp", Age = 32, Blog = "http://www.hammendorp.net/" }); // CREATE NEW DICTIONARY FROM LIST // with key FirstName + LastName and value Age Dictionary AgeDictionary = personList.ToDictionary(x => x.FirstName + " " + x.LastName,
x => x.Age, StringComparer.OrdinalIgnoreCase); // GENERATE OUTPUT foreach (KeyValuePair item in AgeDictionary) Response.Write("key: " + item.Key + " - value: " + item.Value + "
"); //// OUTPUT //key: Pieter Brinkman - value: 27 //key: Mark van Aalst - value: 26 //key: Bas Hammendorp - value: 32
Hope it helps.