Guest User

Untitled

a guest
Jun 21st, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.66 KB | None | 0 0
  1. public static IEnumerable<T> FindDuplicates<T>(this IEnumerable<T> enumerable) {
  2. var hashset = new HashSet<T>();
  3. foreach ( var cur in enumerable ) {
  4. if ( !hashset.Add(cur) ) {
  5. yield return cur;
  6. }
  7. }
  8. }
  9.  
  10. List<SomeType> list = GetTheList();
  11. list
  12. .FindDuplicates()
  13. .ToList()
  14. .ForEach(x => x.State = "DUPLICATE");
  15.  
  16. List<obj> keys = new List<object>();
  17.  
  18. foreach (MyObject obj in myList)
  19. {
  20. if (keys.Contains(obj.keyProperty))
  21. obj.state = "something indicating a duplicate here";
  22. else
  23. keys.add(obj.keyProperty)
  24. }
  25.  
  26. IEnumerable<T> oldList;
  27. IEnumerable<T> list;
  28.  
  29. foreach (var n in oldList.Intersect(list))
  30. n.State = "Duplicate";
Add Comment
Please, Sign In to add comment