C# Linq2Sql插入行为

C# Linq2Sql插入行为,c#,winforms,linq-to-sql,C#,Winforms,Linq To Sql,在应用程序中,我让用户为合同定义“模板”,然后将该合同模板应用于多个客户。合同对象具有保存项目列表的属性LineItems。我在两者之间定义了一对多关系。协定也有UserID属性,但对于模板协定,其始终为0。然后,在用户创建完合同后,他/她单击“保存”,我循环选择客户并创建合同模板的新实例,将UserID设置为相应的值。但实际情况是,对于第一个合同,行项目只存储一次。我尝试将LineItems从模板合同复制到新列表,然后将其分配给模板的每个新实例,但没有成功 是否有实现类似功能的设计模式(使用子

在应用程序中,我让用户为合同定义“模板”,然后将该合同模板应用于多个客户。合同对象具有保存项目列表的属性LineItems。我在两者之间定义了一对多关系。协定也有UserID属性,但对于模板协定,其始终为0。然后,在用户创建完合同后,他/她单击“保存”,我循环选择客户并创建合同模板的新实例,将UserID设置为相应的值。但实际情况是,对于第一个合同,行项目只存储一次。我尝试将LineItems从模板合同复制到新列表,然后将其分配给模板的每个新实例,但没有成功

是否有实现类似功能的设计模式(使用子集合克隆LINQ到SQL实体)


另外,我正在使用CodeSmith生成的PLINQO到SQL实体,合同对象的LineItems属性是System.Data.Linq.EntitySet类型。

Duh,PLINQO到SQL实体似乎有克隆方法,可以通过相关关联对它们进行深度克隆

问题解决