11

I don't quite get what it's going to let me do (or get away with :)

f3lix
  • 29,500
  • 10
  • 66
  • 86
PaulB
  • 23,264
  • 14
  • 56
  • 75

3 Answers3

5

From Charlie Calvert's blog:

Useful Scenarios

There are three primary scenarios that will be enabled by the new support for dynamic lookup:

  1. Office automation and other COM Interop scenarios
  2. Consuming types written in dynamic languages
  3. Enhanced support for reflection

Read more here: http://blogs.msdn.com/charlie/archive/2008/01/25/future-focus.aspx

CraigTP
  • 44,143
  • 8
  • 72
  • 99
5

The two big areas are:

  • working with COM assemblies where methods return vague types - so you can essentially use late binding
  • working with DLR types

Other uses include things like:

  • duck-typing where there is no interface
  • Silverlight talking to the host page's DOM
  • talking to an xml file.

In C# itself, this allows a few things, such as a basic approach to generic operators:

static T Add<T>(T arg1, T arg2) { // doesn't work in CTP
     return ((dynamic)arg1) + ((dynamic)arg2);
}

(of course, I'd argue that this is a better (more efficient) answer to this)

Marc Gravell
  • 1,026,079
  • 266
  • 2,566
  • 2,900
  • I found this a nice example in addition to your last link: http://blogs.msdn.com/lucabol/archive/2009/02/05/simulating-inumeric-with-dynamic-in-c-4-0.aspx, though I wonder what the performance impact would be. – Razzie Mar 27 '09 at 10:48
  • @Razzie - indeed, I have a test harness ready to go as soon as the CTP includes the new bits ;-p – Marc Gravell Mar 27 '09 at 10:59
0

There are some podcasts about the feature itself and how it can be used:

f3lix
  • 29,500
  • 10
  • 66
  • 86