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 + "<br />"); //// OUTPUT //key: Pieter Brinkman - value: 27 //key: Mark van Aalst - value: 26 //key: Bas Hammendorp - value: 32
Hope it helps.