某个实体类如下:
public class Trans
{
public int Id { get; set; }
public string TimeStr { get; set; }
public string SeqID { get; set; }
public bool Equals(Trans other)
{
return SeqID.Equals(other.SeqID);
}
//重载自定义类的Equals方法
public override bool Equals(object obj)
{
if (obj is Trans) return Equals((Trans)obj);
return base.Equals(obj);
}
}
List<Trans> list = new List<Trans>();的数据如下
10:00:00 20140504000001
10:00:00 20140504000001
10:00:01 20140504000002
10:00:01 20140504000002
10:00:01 20140504000003
10:00:01 20140504000003
10:01:02 20140504000004
10:01:02 20140504000004
10:10:03 20140504000005
10:10:03 20140504000005
现要去重复,代码如下:
List<Trans> listNew = new List<Trans>();
foreach (var x in list)
{
if (!listNew.Contains(x))
{
listNew.Add(x);
}
}
执行结果:
10:00:00 20140504000001
10:00:01 20140504000002
10:00:01 20140504000003
10:01:02 20140504000004
10:10:03 20140504000005