title: Does Dictionary<TKey, TValue> order by the keys by default?
body: <p>I'm using a <a href="http://msdn.microsoft.com/en-us/library/yt2fy5zk.aspx" rel="noreferrer"><code>Dictionary&lt;TKey, TValue&gt;</code></a> and I'm getting some odd, though somewhat understandable behaviour in my tests.</p>
  
  <p>No matter the order I add entries to the dictionary when I call <a href="http://msdn.microsoft.com/en-us/library/yt2fy5zk.aspx" rel="noreferrer"><code>Dictionary.Keys</code></a> the keys are returned in the order specified by the <a href="http://msdn.microsoft.com/en-us/library/4d7sx9hd.aspx" rel="noreferrer"><code>IComparable&lt;T&gt;</code></a> implementation for the key's type.</p>
  
  <p>This is good for me as I want to get them in that order anyway, but I can't find anywhere that specifies that they should and will always be returned this way. Therefore, I don't know whether to rely on it always being like that or doing a (potentially redundant) sort on the <a href="http://msdn.microsoft.com/en-us/library/6sh2ey19.aspx" rel="noreferrer"><code>List&lt;T&gt;</code></a> I'm building.</p>
  
  <p>Can I rely on this behaviour or not?</p>