当我们用Linq操作我们自定义的对像数组时,我们会发现有些方法直接使用的话根本不起作用,比如:Distinct.Except.Intersect等扩展方法. 对于我们自定义的对象的比较,我们必须实现IEqualityComparer接口来判断两个对象的相等性. 示例代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace lambda { class
1.去除list里某重复字段值的数据(相当于group by) public class CorrController { //方法 public void DoGet() { List<test11> list_test = new List<test11>(); list_test.Add(new test11() { m = , v = "one" }); list_test.Add(new test11() { m = , v = "two&q
1.去除list里某重复字段值的数据(相当于group by) public class CorrController { //方法 public void DoGet() { List<test11> list_test = new List<test11>(); list_test.Add(new test11() { m = , v = "one" }); list_test.Add(new test11() { m = , v = "two&q
创建 IEqualityComparer的接口类必须实现Equals和GetHashCode方法 public class TipComparer : IEqualityComparer<TipDetails> { public bool Equals(TipDetails x, TipDetails y) { if (Object.ReferenceEquals(x, y)) return true; if (Object.ReferenceEquals(x, null) || Object
我们在想对一个可枚举的对象集合进行去重操作时,一般第一个想到的就是就是Linq的Distinct方法. 先定义一个类,然后使用Distinct方法去重 class Man { public int Age { get; set; } public string Name { get; set; } public string Adress { get; set; } public decimal Weight { get; set; } public decimal Height { get;
List元素类: public class MultiPointSearchingRet { public int ID { get; set; } public string PlateNumber { get; set; } public int VehicleBrand1 { get; set; } public string BrandName { get; set; } } 实现了IEqualityComparer的比较类: public class MultiPointSearchi