Compiler Error CS0834

lambda 表达式必须具有表达式体才能转换为表达式树。

要转换为表达式树的 lambda 必须为表达式 lambda;语句 lambda 和匿名方法只能转换为委托类型。

更正此错误

  1. 从 lambda 表达式中移除语句。

下面的示例生成 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
    }
}