Errore del compilatore CS0834

Impossibile convertire un'espressione lambda con il corpo di un'istruzione in una struttura ad albero dell'espressione.

Le espressioni lambda convertite in strutture ad albero dell'espressione devono essere espressioni lambda dell'espressione; le espressioni lambda e metodi anonimi dell'istruzione possono essere convertiti solo in tipi delegati.

Per correggere l'errore

  • Rimuovere l'istruzione dall'espressione lambda.

Esempio

Nell'esempio seguente viene generato l'errore 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
    }
}