Каким правилам и соглашениям должен следовать класс, чтобы правильно работать с NHibernate?

Я работаю над шаблоном кода для создания POCO из моей схемы БД.

Существует ли своего рода сводный список, который определяет MUST-TO-HAVE в классе, так что он может быть сопоставлен с Db с помощью NHibernate без каких-либо проблем.

(Как я знаю, одно из правил - иметь свои свойства виртуальными, чтобы прокси NHibernate могли переопределять)

Спасибо!

1 ответ

Ну, кроме virtual свойства вы также должны:

  • иметь конструктор без параметров, даже если private/protected
  • иметь свойство (или комбинацию свойств), которое идентифицирует объект (обычно первичный ключ таблицы)
  • переопределение int GetHashCode() а также bool Equals(object obj) используя вышеупомянутый идентификатор объекта в своем теле
Другие вопросы по тегам