Guest User

Untitled

a guest
Sep 24th, 2018
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.75 KB | None | 0 0
  1. private string GetUniqueStringForModel<T>(string originalString, IEnumerable<T> enumerableObjects, Func<T, string> stringFieldFunction) where T : class
  2. {
  3. var uniqueString = originalString;
  4. var duplicateCount = 1;
  5.  
  6. while (enumerableObjects.Select(stringFieldFunction).ToList().Any(currentString => string.Equals(currentString, uniqueString, StringComparison.InvariantCultureIgnoreCase)))
  7. {
  8. uniqueString = originalString + "_" + duplicateCount++;
  9. }
  10.  
  11. return uniqueString;
  12. }
  13.  
  14. // ...
  15. var list = enumerableObjects.Select(stringFieldFunction).ToList();
  16. while (list.Any(currentString => string.Equals(currentString, uniqueString, StringComparison.InvariantCultureIgnoreCase)))
  17. {
  18. uniqueString = originalString + "_" + duplicateCount++;
  19. }
Add Comment
Please, Sign In to add comment