Это мои настройки:
public class Parent
{
public virtual int Id { get; protected set; }
public virtual Property1 { get; set; }
}
public class Child : Parent
{
public virtual Property2 { get; set; }
}
public sealed class ParentMap : ClassMap<Parent>
{
public ParentMap()
{
Id( m => m.Id );
Map( m => m.Property1 );
}
}
public sealed class ChildMap : SubclassMap<Child>
{
public ChildMap()
{
KeyColumn( "ParentId" );
Map( m => m.Property2 );
}
}
Это прекрасно работает для получения данных.Как мне сохранить это, хотя?Я хочу создать новую дочернюю запись в базе данных, которая привязана к родителю.Если я создаю новый дочерний класс с теми же родительскими значениями и сохраняю, я получаю сообщения об ошибках: a different object with the same identifier value was already associated with the session: 2, of entity: Child
Полагаю, это имеет смысл, но как мне создать нового дочернего класса с таким же родителембаза данных?
Может быть, это невозможно, и я должен просто сделать один ко многим от Родителя к Ребенку.