小编Pab*_*uez的帖子

IEqualityComparer和Contains方法

我有这个简单的类与2个枚举字段,我试图在集合(List<T>)中找到此对象的一个​​项目,但Contains方法无法正常工作

public class Calculator : IEqualityComparer<Calculator>
{
    public DashboardsComputationMode ComputationMode { get; set; }
    public Modes Mode { get; set; }

    public Calculator(DashboardsComputationMode dashboardsComputationMode, Modes mode)
    {
        ComputationMode = dashboardsComputationMode;
        Mode = mode;
    }

    public bool Equals(Calculator x, Calculator y)
    {
        return (x.ComputationMode.Equals(y.ComputationMode) && x.Mode.Equals(y.Mode));
    }

    public int GetHashCode(Calculator obj)
    {
        return obj.ComputationMode.GetHashCode() ^ obj.Mode.GetHashCode();
    }
}

public enum DashboardsComputationMode
{
    Weighted = 0,
    Aggregated = 1,
    PR = 2,
    CurrentValue = 3,
    EquivalentHours = 4,
    AggregatedCorrected = …
Run Code Online (Sandbox Code Playgroud)

.net c# ienumerable

17
推荐指数
2
解决办法
3万
查看次数

标签 统计

.net ×1

c# ×1

ienumerable ×1