Expression.Call()到String.Equals()抛出错误

时间:2010-03-16 01:19:34

标签: c# linq

以下代码:

var constant = Expression.Constant("find me", typeof(string));

// memberExpression evaluates to a string
var predicate = Expression.Call(memberExpression, "Equals", null, constant);

抛出错误类型'System.String'上的多个方法'Equals'与提供的参数兼容

我猜这是因为有Equals(Object)Equals(String) - 有没有办法让我通过Expression.Call()的重载来指定我使用哪种方法来获取实例方法命名为字符串?

或者,我是否需要针对Equals()来拨打MethodInfo来拨打特殊情况?

1 个答案:

答案 0 :(得分:2)

您需要传递MethodInfo