В моем приложении на данный момент у меня (как и во многих других приложениях) объект под названием Contact
, который представляет любое лицо. На самом базовом уровне это используется для представления деловых контактов. Однако он также может использоваться для представления сотрудников компании. и есть также несколько специальных типов сотрудников (скажем, один из них называется Manager
)Действительно ли для преобразования объекта из базового класса в подкласс
Я пытаюсь смоделировать это как отношение наследования, которое имеет смысл. Сотрудники имеют имена и адреса, как и контакты, а также ряд атрибутов, связанных с занятостью. У менеджеров также есть несколько специфических атрибутов менеджера.
Сложность возникает, когда работник получает повышение до менеджера. Можно ли преобразовать базовый класс Employee
в класс наследования Manager
? Он чувствует себя не так. Думаю, я сделал бы это со специализированным конструктором по Manager
.
В качестве поддержки NHibernate поддерживается такое поведение? это так же просто, как получение сотрудника, создание менеджера у сотрудника, а затем сохранение менеджера?
Вопрос NHibernate состоял в том, чтобы узнать, будет ли NHibernate жаловаться на сохранение объекта в качестве подкласса, когда он был восстановлен в качестве базового типа. –