I don't quite get what it's going to let me do (or get away with :)
Asked
Active
Viewed 631 times
3 Answers
5
From Charlie Calvert's blog:
Useful Scenarios
There are three primary scenarios that will be enabled by the new support for dynamic lookup:
- Office automation and other COM Interop scenarios
- Consuming types written in dynamic languages
- 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:
- Inside C# 4.0: dynamic typing, optional parameters, covariance and contravariance
- C# 4.0 New Features - COM Interop Enhancements
- deCast - Dynamic Xml with C# 4.0 "will illustrate how you can take advantage of the dynamic functionality enabled in C# 4.0 to access Xml data in a more natural way"

f3lix
- 29,500
- 10
- 66
- 86