We will still have Reflection - using "dynamic" for regular CLR objects will invoke the reflection-based dispatcher.
So - we will still have Reflection, but it will be easier to do.
Here is an example:
dynamic dx = GetSomeCLRObject();
dx.DoSomething();
dx.SomeMember = 2;
object x = GetSomeCLRObject();
Type xt = x.GetType();
MemberInfo DoSomethingMethod = xt.GetMethod("DoSomething");
DoSomethingMethod.Invoke(x, null);
PropertyInfo SomeMemberProperty = xt.GetProperty("SomeMember");
SomeMemberProperty.SetValue(x, 2);
I do not know about you, but I like the first one. =)
, Intellisense, IDE, , .