Cuando su escritura algo como esto:
var q = from d in Data.Table
where d.Name == "SomeName"
select d
Su transforma en un árbol de expresión. Cuando utiliza esta consulta linq contra SQL, la base Linq-to-SQL utiliza este árbol para realizar una consulta SQL de alto rendimiento.
De modo que se usa "detrás de la escena" en que estás haciendo cosas linq.
Puede construir sus propios árboles de expresiones. Esto podría ser muy útil si desea realizar consultas dinámicas. Este podría ser un tipo diferente de criterio de búsqueda. Incluso podría usarlo para hacer combinaciones internas múltiples con cláusulas where y otras cosas interesantes incluso sin conocer los tipos que está usando por adelantado. Sin embargo, esto requiere una reflexión para hacer.
acaba de leer la entrada del blog - buen trabajo! –