Свободное отображение NHibernate присоединенного подкласса без исходного файла класса

У меня есть библиотека с классом Recipient, у которого есть собственная настройка сопоставления в библиотеке.

Теперь в другом проекте я создал новый класс под названием SentEmail, который наследуется от Recipient, я хочу иметь возможность создать новый файл класса сопоставления на основе исходной карты Recipient. Если бы я мог обновить исходный файл ClassMap, я бы использовал

JoinedSubClass ("ID", m => ЗДЕСЬ КАРТИРОВАНИЕ);

Однако, поскольку я не могу настроить исходную карту классов, я застрял в том, как я могу это сделать.

Должен быть другой способ снять шкуру с этой кошки, если у кого-то есть идеи, они были бы очень признательны.

Спасибо

ОБНОВЛЕНИЕ

Также я забыл упомянуть, что часть деталей в новом классе модели SentEmail хранится в отдельной таблице от таблицы Recipient.


person John_    schedule 09.05.2009    source источник


Ответы (1)


Если вы вообще не можете настроить исходное отображение, вам не повезло; в противном случае вы можете использовать метод AddPart для добавления отдельного экземпляра JoinedSubClassPart.

В сторону: ваш дизайн звучит немного странно. SentEmail не похоже, что он действительно должен наследовать от Recipient. SentEmail унаследует от Email или SuccessfulRecipient от Recipient; Recipient и Email - это два разных понятия.

person James Gregory    schedule 09.05.2009
comment
Это хороший момент, спасибо, Джеймс, я изменил имя на RecipientEmailHistory, так как оно больше связано с получателем, чем с электронной почтой. Я также решил, что создание карты для файла было необязательным, потому что это был класс только для чтения, поэтому я создаю запрос и преобразую его в свою новую модель с помощью NHibernate.Transform.Transformers.AliasToBean. Спасибо за вашу помощь. - person John_; 09.05.2009