我有与父母/子女关系有关的问题。
我需要通过将所有孩子从一个转移到另一个来“合并”两个父母。
该操作假定不会删除任何孩子/孤儿
我像下面这样设置配置父/子(没有从子引用父):
Component(x => x.PreferredCategories,
m =>
{
m.HasMany<PreferredCategory>(Reveal.Member<PreferredCategories, IEnumerable<PreferredCategory>>("List"))
.KeyColumn("CandidateId")
.Cascade.SaveUpdate();
});
并设置了Mergin的操作,只需将其添加到parent2子窗体parent1中即可
public void Merge(Parent p)
{
foreach(var item in p.List)
{
this.List.Add(item);
}
}
主要问题是,从parent1合并子对象之后,我们仍然在parent1中看到此对象,但是在db中持久存储更改后,该对象已正确存储。
如何实现目标,parent1在合并对象后有一个空列表? 通过定制收集? 或按明确的孩子名单?
非常感谢!