2010-10-26 10 views

Respuesta

62

muy, muy simplemente con LINQ:

IDictionary<string, string> dictionary = 
    list.ToDictionary(pair => pair.Key, pair => pair.Value); 

Tenga en cuenta que esta fallará si hay alguna clave duplicados - Asumo que eso está bien?

1

Utilice ToDictionary() método de extensión de la clase Enumerable.

6

O bien, puede utilizar este método de extensión para simplificar su código:

public static class Extensions 
{ 
    public static IDictionary<TKey, TValue> ToDictionary<TKey, TValue>(
     this IEnumerable<KeyValuePair<TKey, TValue>> list) 
    { 
      return list.ToDictionary(x => x.Key, x => x.Value); 
    } 
} 
Cuestiones relacionadas