无法隐式将类型'System.Func <t,bool =“”>'转换为'bool'

时间:2017-06-13 15:14:25

标签: .net c#-4.0 lambda expression

我会责备疲倦虽然这个人真的让我感觉很好

var result = Expression.Lambda<Func<T, bool>>(expression, parameterType).Compile();

出错:无法将类型'System.Func'隐式转换为'bool'

正如你可能已经猜到的那样,我需要这个回到bool而不是Func

提前致谢

1 个答案:

答案 0 :(得分:0)

public class Class1<T>
{
    public Class1()
    {
        var result = Expression.Lambda<Func<T, bool>>(null, new[] {new ParameterExpression()});
        var method = result.Compile();
        bool result = method(new T());
    }
}

这对我来说非常合适。