title: How to call an extension method of a dynamic type?
body: <p>I'm reading the book 'C# in Depth, 2nd Edition' of Jon Skeet. He said that we can call extension methods with dynamic arguments using two workarounds, just as</p>
  
  <pre><code>dynamic size = 5;
  var numbers = Enumerable.Range(10, 10);
  var error = numbers.Take(size);
  var workaround1 = numbers.Take((int) size);
  var workaround2 = Enumerable.Take(numbers, size);
  </code></pre>
  
  <p>Then he said "Both approaches will work if you want to call the extension method with the dynamic value as the implicit <code>this</code> value". I don't know how to achieve it.</p>
  
  <p>Thanks a lot.</p>