Я хочу иметь возможность создать родительский объект с дочерними элементами и позволить родительскому объекту обрабатывать обновление, сохранять и удалять.
Мои классы карты.
ParentMap
Id(x => x.Id, "ID").GeneratedBy.Identity();
Map(x => x.Name);
HasMany(x => x.Children)
.KeyColumn("ParentID")
.Inverse()
.Cascade
.AllDeleteOrphan()
.AsBag();
ChildMap
Id(x => x.Id, "ID").GeneratedBy.Identity();
Map(x => x.Name);
Map(x => x.Value);
References(x => x.Parent);
Это код.
После обратной передачи я создаю нового родителя с детьми.Проблема в том, что он не удалит дочерние элементы, но все остальное работает нормально, обновляет и сохраняет.
var parent = new Parent();
parent.Id = _view.parentID;
parent.Name = _view.Name;
parent.Children = _view.Children;
Я также попробовал приведенный ниже код, но это возвращает неуникальную ошибку.
var parent = repository.Get(_view.parentID);
parent.Name = _view.Name;
parent.Chidlren = _view.Children;
Может кто-нибудь сказать мне лучший способ справиться с этим в NHibernate?
Спасибо.