2010-05-13 19 views

Respuesta

3

Por ejemplo, al usar la reflexión.

ejemplo, algo como esto:

object calc = GetCalculator(); 
Type calcType = calc.GetType(); 
object res = calcType.InvokeMember("Add", BindingFlags.InvokeMethod, null, new object[] { 10, 20 }); 
int sum = Convert.ToInt32(res); 

que se convertiría en:

dynamic calc = GetCalculator(); 
int sum = calc.Add(10, 20); 

Esa es una gran mejora que pienso.

Pero hay más temas donde esto puede ser útil. Por ejemplo, cuando se trabaja con objetos COM de interoperabilidad que esto podría ser útil, mira: http://www.devx.com/dotnet/Article/42590

2

También se utiliza al incrustar lenguajes dinámicos como IronPython/IronRuby para permitir que los tipos de carga definidas en los archivos fuente externa, y acceder a ellos de forma más directa en C#

Cuestiones relacionadas