title: Why Dictionary "does not contain a definition for 'ElementAt'"?
body: <p>Why Dictionary "does not contain a definition for 'ElementAt'" during dynamic programming</p>
  
  <pre><code>        Dictionary&lt;string, dynamic&gt; D1 = new Dictionary&lt;string, dynamic&gt;();
          D1.Add("w1", 10);
          D1.Add("w2", false);
          Dictionary&lt;string, dynamic&gt; D2 = new Dictionary&lt;string, dynamic&gt;();
          D2.Add("v1", 10);
          D2.Add("v2", D1);
          textBox1.Text += D2.ElementAt(1).Value.ElementAt(1).Value;
  </code></pre>
  
  <p>we should get result on textbox1 "false"<br>
  But instead we will get run-time error: "does not contain a definition for 'ElementAt'"</p>
  
  <p>if you will type:  </p>
  
  <pre><code>        Dictionary&lt;string, dynamic&gt; var1 = D2.ElementAt(1).Value;
          textBox1.Text += var1.ElementAt(1).Value;
  </code></pre>
  
  <p>Then it will work correctly!  </p>