Error del compilador CS0834

Actualización: noviembre 2007

Mensaje de error

Una expresión lambda debe tener un cuerpo de expresión para convertirse en un árbol de expresión.
A lambda expression must have an expression body to be converted to an expression tree.

Los elementos lambda que se convierten en árboles de expresión deben ser lambdas de expresión; las expresiones lambda de instrucción y los métodos anónimos sólo se pueden convertir en tipos de delegado.

Para corregir este error

  • Quite la instrucción de la expresión lambda.

Ejemplo

El ejemplo siguiente genera el error CS0834:

// cs0834.cs
using System;
using System.Linq;
using System.Linq.Expressions;

public class C
{
    public static int Main()
    {
        Expression<Func<int, int>> e = x => { return x; }; // CS0834
    }
}