問題:更好的辦法來OrderedDictionary轉換爲詞典<字符串,字符串>
如何從OrderedDictionary
轉換爲Dictionary<string, string>
以簡潔,但性能方法?
現狀:
我有,我不能碰那個希望我傳遞一個Dictionary<string, string>
一個lib。不過,我想建立一個OrderedDictionary
,因爲訂單在我的代碼中非常重要。所以,我正在與OrderedDictionary
合作,當它需要時,我需要將它轉換爲Dictionary<string, string>
。
我迄今爲止嘗試:
var dict = new Dictionary<string, string>();
var enumerator = MyOrderedDictionary.GetEnumerator();
while (enumerator.MoveNext())
{
dict.Add(enumerator.Key as string, enumerator.Value as string);
}
我們有了提升的空間在這裏。是否有更簡潔的方式來執行此轉換?任何性能考慮?
如果使用的是通用的,而不是SortedDictionary<TKey, TValue>
我使用.NET 4
感謝您的回答。我嘗試了'foreach',但是不知道如何獲得'.Key'和'.Value',但是我使用'var kvp'而不是'DictionaryEntry kvp'。現在看起來不錯。我也喜歡linq方法。 – lbstr