2011-11-08 5 views
2

オブジェクトの2つのリストを比較したいと思います。オブジェクトには4つの異なるプロパティがあります。私はシーケンスの3つだけを比較する必要があります(1つは常に異なるので、3つだけです)。次のように特定のプロパティのSequenceEqual

例は次のようになります。

list1 = new List<myClass>() { new myClass(10, "a", 100, "unique1"), 
    new myClass(10, "a", 100, "unique2") }; 

list2 = new List<myClass>() { new myClass(10, "a", 100, "unique3"), 
    new myClass(10, "a", 100, "unique4") }; 

は、私は、第四(ユニーク)プロパティずにシーケンスとしてこれらのリストを比較することはできますか? exapmleの望ましい結果はTRUEになります。

これを解決する方法はありますか?

答えて

3

SequenceEqualオーバーロードを使用すると、比較対象のプロパティのみを含むIEqualityComparer<T>実装を渡すことができます。

その例のlinked pageはいいです。

2

あなたはカスタムIEqualityComparer指定することができますEnumerable.SequenceEqualオーバーロードを使用することができます - 。唯一興味のある3つのプロパティを比較するカスタム1を実装し

関連する問題