在一个应用程序中,我让用户为合约定义“模板”,然后将该合同模板应用于多个客户。 Contract对象具有包含项列表的属性LineItems。我在两者之间定义了一对多的关系。合同也有UserID属性,但对于模板合同,它始终为0.然后在用户完成创建合同后,他/她单击保存并循环选定的客户并创建合同模板的新实例,将UserID设置为相应的价值。但是,对于第一个合同,LineItems只存储一次。我尝试将LineItems从模板合约复制到新的List,然后将其分配给模板的每个新实例,但没有运气。
是否有一种设计模式可以实现类似的功能(使用子集合克隆LINQ to SQL实体)?
P.S。我正在使用CodeSmith生成PLINQO到SQL实体,而Contract对象的LineItems属性是System.Data.Linq.EntitySet类型。
答案 0 :(得分:0)
Duh,似乎PLINQO到SQL实体的克隆方法深深地克隆了它们的相关关联。
问题解决了