Есть ли причины, по которым Equals или GetHashCode следует переопределить в сущностях при использовании NHibernate? И в каких сценариях эти причины действительны?
Некоторые причины, которые можно найти в Интернете:
- Поддержка отложенной загрузки. Сравнение
прокси-объекты по умолчанию Equals
метод может привести к неожиданным ошибкам.
Но это должно быть решено
карта идентичности (и она действительно находится в
много случаев), не так ли? При работе с сущностями из одного сеанса все должно работать нормально, даже без переопределения Equals / GetHashCode. Здесь
любые случаи, когда карта идентичности
не сыграть свою роль?
- Это важно для коллекций NHibernate. Существуют ли случаи, когда реализации GetHashCode по умолчанию недостаточно (не считая проблем, связанных с Equals)?
- Смешивание сущностей из нескольких
сеансы и отдельные объекты. Это
хорошая идея?
Есть другие причины?
задан Jakub Linhart 3 May 2011 в 08:21
поделиться