可能重复:
测试 lambda 表达式相等性的最有效方法
如何检查两个 Expression<Func<T, bool>> 是否相同
如何像这个示例一样测试两个表达式是否相同
string firstname = "Ahmed";
Expression<Func<string, bool>> exp1 = (s) => s.Contains(firstname);
Expression<Func<string, bool>> exp2 = (s) => s.Contains(firstname);
Console.WriteLine(exp1 == exp2);//print false as two references are no equal
现在如何确保 expression1 等于 expression2 ,因为它们具有相同的标准?