Compilerfehler CS0834

Ein Lambdaausdruck muss über einen Ausdruckskörper verfügen, um in eine Ausdrucksbaumstruktur konvertiert zu werden.

Bei Lambdas, die in Ausdrucksbaumstrukturen übersetzt werden, muss es sich um Ausdruckslambdas handeln. Anweisungslambdas und anonyme Methoden können nur in Delegattypen konvertiert werden.

So beheben Sie diesen Fehler

  1. Entfernen Sie die Anweisung aus dem Lambdaausdruck.

Beispiel

Im folgenden Beispiel wird der Fehler CS0834 generiert:

// 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  
    }  
}