Un árbol de expresiones es una estructura de datos que contiene expresiones, que básicamente es código. Entonces, es una estructura de árbol que representa un cálculo que puede hacer en el código. Estos fragmentos de código se pueden ejecutar "ejecutando" el árbol de expresiones sobre un conjunto de datos.
Una gran ventaja de los árboles de expresiones es que puedes construirlos en código; es decir, compila código ejecutable (o una secuencia de pasos) en el código. También puede modificar el código antes de ejecutarlo reemplazando expresiones por otras expresiones.
Una expresión es entonces un delegado de función, como (int x => return x * x)
.
Ver también http://blogs.msdn.com/b/charlie/archive/2008/01/31/expression-tree-basics.aspx
posible duplicado de [¿Por qué utilizar la expresión> en lugar de Func ?] (Http://stackoverflow.com/questions/793571/why-would-you-use-expressionfunct- rather-than-funct) –
nawfal
Respondido con algunos ejemplos ..http: //stackoverflow.com/questions/403088/practical-use-of-expression-trees/20470060#20470060 – Moumit