首页 > Windows开发 > 详细

C# IEqualityComparer类型参数写法

时间:2017-07-28 18:52:53      阅读:253      评论:0      收藏:0      [点我收藏+]

最近在使用Union、Except时,由于默认的对比不太好使,所以需要自定义对比器,下面附上代码。

class MaterialListComparer : IEqualityComparer<WonderManager.Basal.Material.Domain.Material>
    {
        public bool Equals(WonderManager.Basal.Material.Domain.Material x, WonderManager.Basal.Material.Domain.Material y)
        {
            if (Object.ReferenceEquals(x, y)) return true;
            if (Object.ReferenceEquals(x, null) || Object.ReferenceEquals(y, null))
                return false;
            return x.MaterialCode == y.MaterialCode;
        }

        public int GetHashCode(WonderManager.Basal.Material.Domain.Material model)
        {
            if (Object.ReferenceEquals(model, null)) return 0;

            int hashProductName = model.MaterialCode == null ? 0 : model.MaterialCode.GetHashCode();

            return hashProductName;
        }
    }

  

C# IEqualityComparer类型参数写法

原文:http://www.cnblogs.com/gaozejie/p/7251756.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!