如何使用LINQ和EF将记录及其关系复制到另一个表

如何使用LINQ和EF将记录及其关系复制到另一个表,linq,entity-framework-4.1,Linq,Entity Framework 4.1,我需要将警报详细信息复制到案例详细信息,以及与客户、账户等的关系,这与警报相关,因为警报是针对多个客户的一个警报。我试过这种方法,但它给了我一个错误 “EntityCollection已初始化。在反序列化对象图期间,应仅调用InitializeRelatedCollection方法来初始化新的EntityCollection。” 如果所有这些对象都是集合,则需要相应地复制它们: caseDetails.IncidentAccounts.AddRange(alerdDetails.Incident

我需要将警报详细信息复制到案例详细信息,以及与客户、账户等的关系,这与警报相关,因为警报是针对多个客户的一个警报。我试过这种方法,但它给了我一个错误 “EntityCollection已初始化。在反序列化对象图期间,应仅调用InitializeRelatedCollection方法来初始化新的EntityCollection。”


如果所有这些对象都是集合,则需要相应地复制它们:

caseDetails.IncidentAccounts.AddRange(alerdDetails.IncidentAccounts)


但如果不看模型定义,就很难判断

谢谢你的建议。但是EntityCollection没有没有方法AddRange();在这里,如果不分别看到caseDetails和alertDetails对象的实际模型定义,我真的很难知道。。。
 if (alertDetails.IncidentAccounts != null)
            caseDetails.IncidentAccounts = alertDetails.IncidentAccounts;
        if (alertDetails.IncidentCustomers != null)
            caseDetails.IncidentCustomers = alertDetails.IncidentCustomers;
        if (alertDetails.IncidentTransactions != null)
            caseDetails.IncidentTransactions = alertDetails.IncidentTransactions;
        if (alertDetails.IncidentCheckFraudTransactions != null)
            caseDetails.IncidentCheckFraudTransactions = alertDetails.IncidentCheckFraudTransactions;