我有这样一行代码: var predicate = Expression.Lambda<Func<TEntityType, bool>>(body, param); 其中TEntityType是泛型参数。 然而,我没有可用的泛型参数。我有: Type _EntityType; 在这种情况下,Expression.Lambda的非泛型语法是什么?谢谢
有一个重载版本的Expression.Lambda方法可以使用表达式体的类型,因此您只需要在调用该方法之前动态创建该类型即可。type lambdaType = typeof(Func<,>).MakeGenericType(_EntityType, typeof(bool)); var predicate = Expression.Lambda(lambdaType, body, param);