私のシナリオ、
変換方法List<KeyValuePair<string, string>>
からIDictionary<string, string>
?
LINQを使用すると、非常に簡単です。
IDictionary<string, string> dictionary =
list.ToDictionary(pair => pair.Key, pair => pair.Value);
重複するキーがある場合、これは失敗することに注意してください-それは大丈夫だと思いますか?
または、この拡張メソッドを使用してコードを簡略化できます。
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);
}
}
Enumerable
クラスのToDictionary()
拡張メソッドを使用します。