[英]compare IEnumerable lists and remove duplicates from one of that list
我有以下模特班
public class AssignUserViewModel
{
public IEnumerable<User> Viewrlist { get; set; }
public IEnumerable<User> AssignedViewrlist { get; set; }
}
我将值绑定到它,如下所示。 并比较objassignuser.Viewrlisttry
和objassignuser.AssignedViewrlist
然后从objassignuser.Viewrlisttry
删除重复项,如下所示。 但这不能正常工作
AssignUserViewModel objassignuser = new AssignUserViewModel();
objassignuser.Viewrlist = ..
objassignuser.AssignedViewrlist = ..
IEnumerable<User> result = (objassignuser.Viewrlist).Except( objassignuser.AssignedViewrlist );
objassignuser.Viewrlist = null;
objassignuser.Viewrlist = result;
您必须使User
类实现IEquatable<T>
接口 。
一个简单的实现如下所示:
class User: IEquatable<User>
{
public int Id{ get; set; }
public string UserName { get; set; }
public bool Equals(User other)
{
return Id == other.Id;
}
public override int GetHashCode()
{
return Id.GetHashCode();
}
}
有关更多信息,请在这里查看 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.