title: Unexpected `Specified cast is not valid.` exception (Linq)
body: <p>Does anyone knows why I can't cast an <code>Int</code> to an <code>UInt</code> by using the Linq extension method <code>Cast&lt;&gt;()</code>?</p>
  
  <pre><code>var myIntList = new List&lt;int&gt;();
  
  myIntList.Add(1);
  myIntList.Add(2);
  myIntList.Add(3);
  
  var myUIntList = myIntList.Cast&lt;uint&gt;().ToList();
  </code></pre>
  
  <p>It throws a <strong>Specified cast is not valid</strong>. When I'm using a <code>Select()</code>, it will work <em>(ofcourse)</em>.</p>
  
  <pre><code>var myIntList = new List&lt;int&gt;();
  
  myIntList.Add(1);
  myIntList.Add(2);
  myIntList.Add(3);
  
  var myUIntList = myIntList.Select(i =&gt; (uint)i).ToList();
  </code></pre>
  
  <p><em>(is it a bug or not implemented feature?)</em></p>