文字列プロパティを持つクラスがあり、GetHashCode() メソッドをオーバーライドする必要があります。
class A
{
public string Prop1 { get; set; }
public string Prop2 { get; set; }
public string Prop3 { get; set; }
}
最初のアイデアは、次のようにすることです。
public override int GetHashCode()
{
return Prop1.GetHashCode() ^ Prop2.GetHashCode() ^ Prop3.GetHashCode();
}
2番目のアイデアは次のとおりです。
public override int GetHashCode()
{
return String.Join(";", new[] {Prop1, Prop2, Prop3}).GetHashCode();
}
最善の方法は何ですか?