Freigeben über


Compilerfehler CS0834

Aktualisiert: November 2007

Fehlermeldung

Ein lambda-Ausdruck mit einem Anweisungstext kann nicht in eine Ausdrucksbaumstruktur konvertiert werden.
A lambda expression must have an expression body to be converted to an expression tree.

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

  • Entfernen Sie die Anweisung aus dem Lambdaausdruck.

Beispiel

Durch das folgende Beispiel wird der Fehler CS0834 ausgelöst:

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