Подкласс для сопоставления дополнительного столбца таблицы - PullRequest
0 голосов
/ 14 октября 2011

У меня есть класс сущностей A и карта Fluent NHibernate для него AMap , который отображает некоторые столбцы из таблицы базы данных (некоторые поля отсутствуют).Я хотел бы создать класс B , который наследуется от A (чтобы не нарушать отношения с другими объектами), и сопоставить его для разрешения доступа к столбцам, не отображаемым базовым классом.Проблема в том, что я не могу изменить строку кода в базовых классах ( A и AMap ).Есть ли решение этой проблемы?

Ответы [ 2 ]

0 голосов
/ 17 октября 2011

Насколько я понимаю требование, это простая таблица для иерархии классов отображение.Для этого вам потребуется столбец дискриминатора.

Для сопоставления см. Последний пример на этой странице: Свободно вики .

0 голосов
/ 14 октября 2011

Я не уверен, как вы хотите использовать его, но это может сделать

class B : A
{

}

class BMap : ClassMap<B>
{
    public BMap()
    {
        Table("A's tablename");
        ...
    }
}

тогда это должно быть возможно

someEntity.ListOfAs.Add(new B());

Не знаю, есть ли проблемы в будущем

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...