2010-10-26 32 views

回答

62

非常,非常簡單地使用LINQ:

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

需要注意的是,如果有任何重複鍵,這將失敗 - 我認爲這是好嗎?

1

使用Enumerable類的ToDictionary()擴展方法。

6

或者你可以使用這個擴展方法來簡化代碼:

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); 
    } 
}