9

LINQ次のようなオブジェクト (車両) の 2 つのリストをマージするときに、重複を削除しようとしています。

var list = list1.Union(list2);

私はoverridden the Equals メソッドを持っていますが、コードはそれにステップインすることすらありません。ただし、次のコードはオーバーライドにステップ インします。

Vehicle v1 = new Vehicle();
Vehicle v2 = new Vehicle();

if (v1.Equals(v2)).......

編集

Vehicle オーバーライドのシグネチャは次のとおりです。

も実施していますIEquatable<Vehicle>

 public bool Equals(Vehicle other)
 {                     
 }

 public override int GetHashCode()
 {            
 }

Vehicle クラスにロジックが必要なので、Union メソッドに比較子を渡したくありません。

ここで私は何を間違えましたか?

4

1 に答える 1