C# SequenceEqual用于特定属性

C# SequenceEqual用于特定属性,c#,C#,我想比较两个对象列表。这些对象有四种不同的属性。我只需要将其中三个作为序列进行比较(只有三个,因为其中一个总是不同的) 例如: 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, "uniq

我想比较两个对象列表。这些对象有四种不同的属性。我只需要将其中三个作为序列进行比较(只有三个,因为其中一个总是不同的)

例如:

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") };
list1=newlist(){newmyclass(10,“a”,100,“unique1”),
新myClass(10,“a”,100,“unique2”)};
list2=new List(){new myClass(10,“a”,100,“unique3”),
新myClass(10,“a”,100,“unique4”)};
我可以在没有第四个(唯一)属性的情况下按顺序比较这些列表吗?考试的预期结果将是真实的

有什么办法解决这个问题吗?

您可以使用重载,它允许您传入一个只包含要比较的属性的
IEqualityComparer
实现

这方面的示例很好。

您可以使用重载来指定自定义的
IEqualityComparer
——实现一个只比较您感兴趣的三个属性的自定义属性