c# – Linq表达式如何确定平等?

我正在考虑使用 Linq Expression作为字典中的关键.不过,我很担心我会得到奇怪的结果,因为我不知道平等是如何由Linq表达决定的.

派生自表达式的类比较值相等或引用相等吗?或换句话说,

Expression<Func<object>> first = () => new object(); 
        Expression<Func<object>> second = ()=>new object();
        bool AreTheyEqual = first == second;

解决方法

您的测试比较表达式.表达本身只提供参考平等;您的测试可能会显示“假”.为了面对语义平等,你需要做很多工作,例如:
x => 123

y => 123

当量?作为一个粗糙的测试,您可以比较ToString(),但这将是非常脆弱的.

相关文章

项目中经常遇到CSV文件的读写需求,其中的难点主要是CSV文件...
简介 本文的初衷是希望帮助那些有其它平台视觉算法开发经验的...
这篇文章主要简单记录一下C#项目的dll文件管理方法,以便后期...
在C#中的使用JSON序列化及反序列化时,推荐使用Json.NET——...
事件总线是对发布-订阅模式的一种实现,是一种集中式事件处理...
通用翻译API的HTTPS 地址为https://fanyi-api.baidu.com/api...