NHibernate 3.3: составной идентификатор с генерируемым ключом-свойством?
Я читал, что это отображение невозможно в NHibernate 3.3:
<class name="Digital" table="DIGITALS">
<composite-id>
<key-many-to-one name="Person" class="Person" column="PERSONID" />
<key-property name="Id" column="ID">
**<generator class="increment"/>**
<key-property/>
</composite-id>
<property name="Nombre" column="NOMBRE" />
По сути, мне нужно, чтобы свойство составного идентификатора автоматически вычислялось NH.
Может быть, существует методика получения чего-то подобного?
Заранее спасибо.
1 ответ
Решение
Вы должны реализовать это самостоятельно, так как CompositeIds всегда генерируются назначенными для NH
class Digital
{
private static long number = 0;
private static long NextNumber()
{
return Interlocked.Increment(ref number);
}
public Digital()
{
Id = NextNumber();
}
}