Plus, with the
TryConvert(ConvertBinder binder, out object result)
you can get the statically typed object you were expecting if you ever need a strongly typed object.
Enough of this talking, here you can find some more explanations about dynamic and how to take advantage of it :
and here’s the code: