作者:Arthur小熊 | 来源:互联网 | 2022-12-02 16:27
1> Salah Akbari..:
你需要覆盖Equal
并GetHashCode
在你的课堂上.像这样的东西:
public class Animal
{
public int Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
public override bool Equals(object obj)
{
if (!(obj is Animal))
return false;
var p = (Animal)obj;
return p.Id == Id && p.Name == Name && p.Age == Age;
}
public override int GetHashCode()
{
return String.Format("{0}|{1}|{2}", Id, Name, Age).GetHashCode();
}
}
或者使用较新版本的C#,您可以:
public override int GetHashCode() => $"{Id}|{Name}|{Age}".GetHashCode();