¿Cuál es la diferencia entre una variable declarada como dinámica y una variable declarada como System.Object? Ejecución de la siguiente función parecería indicar que ambas variables consiguen convierte en el tipo correcto de forma dinámica:Diferencia entre el objeto dinámico y System.Object
void ObjectTest()
{
System.Object MyTestVar = "test";
dynamic MyTestVar2 = "Testing 123";
Console.WriteLine("{0}", MyTestVar.GetType());
Console.WriteLine("{0}", MyTestVar2.GetType());
MyTestVar = 123;
MyTestVar2 = 321;
Console.WriteLine("{0}", MyTestVar.GetType());
Console.WriteLine("{0}", MyTestVar2.GetType());
}
escribí una publicación sobre esto hace algún tiempo: http://blogs.msdn.com/b/csharpfaq/archive/2010/01/25/what-is-the-difference-between-dynamic-and-object -keywords.aspx –