15
可能重複:
How to check if two Expression<Func<T, bool>> are the same如何比較兩個lambda表達式?
我需要比較兩個lambda表達式,檢查平等。基本上,以下兩個拉姆達是相同的:
Expression<Func<int, bool>> exp1 = (Foo f) => f.Bar().StartsWith("F");
Expression<Func<int, bool>> exp2 = (Foo b) => b.Bar().StartsWith("F");
我如何檢查是否exp1
這是否exp2
做同樣的事情?
是否平等是指在語義上是相同的,或者它們都產生相同的結果? –
供參考,有一個解決方案[鏈接](http://stackoverflow.com/a/24528357/2528649),我用這個代碼檢查過,效果很好。 – neleus