如何使用IComparable <t>进行比较2列表

时间:2018-09-01 17:07:36

标签: c# .net

例如:

var ExistingGroup = new List<Person>
{
new Person(1,"Rahul","Sharma"),
new Person(2,"Deepak","Jha"),
new Person(3,"Raj","Mishra"),
}

 var NewGroup = new List<Person>
{
new Person(4,"Jay","Mohan"),
new Person(2,"Dileep","Kumar"),
new Person(5,"Mohan","Lal"),
}

输出:

1 Removed
4 Added
2 Changed
3 Removed
5 Added

如何使用IComparable<T>获得此输出?

1 个答案:

答案 0 :(得分:0)

实施IComparable不会对您有所帮助,因为它旨在启用订购功能,而不是用于更改跟踪。 您将编写一个包含两个列表的方法,并且:

  1. 在第一个列表上重复,同时搜索另一个列表中每个出现的“人员编号”->为您提供已删除的项目
  2. 检查两个列表中出现的人员是否有差异->为您提供更改的项目
  3. 以另一种方式重复->为您添加项目

您可以使用LINQ来实现。