Мне интересно, смогу ли я прийти к единому мнению, какой метод является лучшим подходом для создания отдельного набора элементов: C # HashSet
или с помощью IEnumerable's .Distinct ()
, что является функцией Linq?
Допустим, я просматриваю результаты запроса из БД с помощью DataReader, и мои варианты - добавить объекты, которые я создаю, в List
или к HashSet
С параметром List
мне пришлось бы сделать что-то вроде:
myList = myList.Distinct (). ToList
С HashSet
, насколько я понимаю, добавление к нему элементов устраняет дублирование само по себе, если вы переопределили GetHashCode ()
и Equals ()
в SomeObject. В основном меня беспокоят риски и аспекты производительности опций.
Спасибо.