讨论,LINQ去除重复的数据(某个字段有重复的数据)的Distinct方法.解决方法
讨论,LINQ去除重复的数据(某个字段有重复的数据)的Distinct方法.
我写了下面一个类,然后在LINQ的查询语句后追加.Distinct(new MyComparer());
想实现查询的结果里,不存在姓名相同的行。
编译通过了,但使用它就报错说“不支持用于查询运算符“Distinct”的重载。”。
User是Model中的类,查询语句返回的是IQueryable<User>型的数据。
------解决方案--------------------
如果不介意性能(或者说重复的数据非常少)可以直接执行查询后再Distinct。
q.AsEnumerbale().Distinct( ... );
------解决方案--------------------
加油。。应当快实现了吧。
我写了下面一个类,然后在LINQ的查询语句后追加.Distinct(new MyComparer());
想实现查询的结果里,不存在姓名相同的行。
编译通过了,但使用它就报错说“不支持用于查询运算符“Distinct”的重载。”。
- C# code
class MyComparer : IEqualityComparer<User> { public bool Equals(User x, User y) { if (x == null && y == null) { return false; } else { return x.username == y.username; } } public int GetHashCode(User obj) { return obj.username.GetHashCode(); } }
User是Model中的类,查询语句返回的是IQueryable<User>型的数据。
------解决方案--------------------
如果不介意性能(或者说重复的数据非常少)可以直接执行查询后再Distinct。
q.AsEnumerbale().Distinct( ... );
------解决方案--------------------
加油。。应当快实现了吧。