我正在寻找一种模式,可以在将记录插入数据库时用于父子关系。由于子记录需要父记录首先存在,我必须使用讨厌的东西,如存储会话ID,然后在保存父记录后更新外键。
是否有任何熟知的模式可以解决这个问题。 问候 加雷
答案 0 :(得分:0)
你似乎要么在父母之前或同时记录孩子,这可能是奇怪的。您的数据模型表明孩子们了解他们的父母,因此,数据表明父母要在其子女之前插入。您可能无法在单个查询中实现此目的,因为您所讨论的外键是指相同的表(A.parent -> A.id
)。
答案 1 :(得分:0)
public class ParentRepository
{
public void Save(Parent parent)
{
using (TransactionScope scope = new TransactionScope())
{
//Add you database code here to insert to both tables in a transaction
}
}
}