title: Better way to convert OrderedDictionary to Dictionary<string, string>
body: <p>How do you convert from <code>OrderedDictionary</code> to <code>Dictionary&lt;string, string&gt;</code> in a concise, yet performant way?</p>
  
  <p><strong>The Situation:</strong></p>
  
  <p>I have a library that I can't touch that expects me to pass a <code>Dictionary&lt;string, string&gt;</code>. I want to build up an <code>OrderedDictionary</code> though, because order is so important in my part of the code. So, I'm working with an <code>OrderedDictionary</code> and when it comes time to hit the library, I need to convert it to <code>Dictionary&lt;string, string&gt;</code>.</p>
  
  <p><strong>What I have tried so far:</strong></p>
  
  <pre><code>var dict = new Dictionary&lt;string, string&gt;();
  var enumerator = MyOrderedDictionary.GetEnumerator();
  while (enumerator.MoveNext())
  {
      dict.Add(enumerator.Key as string, enumerator.Value as string);
  }
  </code></pre>
  
  <p>There's got to be room for improvement here. Is there a more concise way of performing this conversion? Any performance considerations?</p>
  
  <p>I'm using .NET 4.</p>