title: Casting value of Dictionary<SomeEnum, dynamic> to an tuple fails
body: <p>I have a dictionary with a key of a known type (in the given example: string) and a tuple as value. I want to pass this dictionary around in the application and usually can unpack the data easily by using the key of the dictionary (in the real application it is not a string).</p>
  
  <p>But I have one use case in which I'm only interested in the first element of the tuple, I only know how much other elements are in the tuple, but I don't know their type when I receive the dictionary.</p>
  
  <pre><code>// Some place of the application defines the dictionary like this and adds some values...
  var dictionary = new Dictionary&lt;string, dynamic&gt;();
  dictionary.Add("key", ("I'm interested in this tuple element only", new List&lt;int&gt;().ToImmutableList()));
  
  
  // In some other place of the application, I get the dictionary from above, but I'm interested only 
  // in the first element of the tuple, from the other elements I don't know the type so I try
  // to access it like:
  (string valueOfInterest, object) element = dictionary["key"];    
  
  // Do something with valueOfInterest
  </code></pre>
  
  <p>But this code gives me an</p>
  
  <pre><code>Microsoft.CSharp.RuntimeBinder.RuntimeBinderException: 
  Cannot implicitly convert type System.ValueTuple&lt;string,System.Collections.Immutable.ImmutableList&lt;int&gt;&gt;' 
  to 'System.ValueTuple&lt;string,object&gt;'
  </code></pre>
  
  <p>So I'm wondering how it is possible (or if it is possible at all), to access only the first element of the tuple and "discard" the others by converting them to object. </p>