加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-15 17:36:39 所属栏目:百科 来源:网络整理
导读:我正在考虑使用 Linq Expression作为字典中的关键.不过,我很担心我会得到奇怪的结果,因为我不知道平等是如何由Linq表达决定的. 派生自表达式的类比较值相等或引用相等吗?或换句话说, ExpressionFuncobject first = () = new object(); ExpressionFuncobject
我正在考虑使用 Linq Expression作为字典中的关键.不过,我很担心我会得到奇怪的结果,因为我不知道平等是如何由Linq表达决定的.

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

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

解决方法

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

y => 123

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读