Entity framework 4 EF 4.0添加关系

Entity framework 4 EF 4.0添加关系,entity-framework-4,self-tracking-entities,Entity Framework 4,Self Tracking Entities,嗨 我有一个使用EF自跟踪对象的项目。我正在尝试向对象添加关系。parentobject.relationshipObject.AddNew relationshipObject。。。。 但它抛出了一个错误: 无法更改ObservableCollection 在收集过程中,更改或 PropertyChanged事件 此错误发生在模板创建的代码的区域关联修复中。 最初,main对象不带来任何关系。仅当用户选择项目时,项目中的关系才会更新。 我发现,如果我从集合中删除main对象并用关系读取它,则不

嗨 我有一个使用EF自跟踪对象的项目。我正在尝试向对象添加关系。parentobject.relationshipObject.AddNew relationshipObject。。。。 但它抛出了一个错误:

无法更改ObservableCollection 在收集过程中,更改或 PropertyChanged事件

此错误发生在模板创建的代码的区域关联修复中。 最初,main对象不带来任何关系。仅当用户选择项目时,项目中的关系才会更新。 我发现,如果我从集合中删除main对象并用关系读取它,则不会发生此错误。如果我只更新mainObject中的relationship对象,那么当我从客户端添加新的relationship对象时,就会出现此问题 非常感谢您的帮助

-代码顺序如下 1.获取所有父实体。 2.当用户选择一个实体时,获取该实体的关系并更新该关系实体

parentCol.AsEnumerable.WhereFunctionx x.ID=e.Result.ID.FirstOrDefault.StopTracking parentCol.AsEnumerable.WhereFunctionx x.ID=e.Result.ID.FirstOrDefault.relationshipEntity=e.Result.relationshipEntity parentCol.AsEnumerable.WhereFunctionx x.ID=e.Result.ID.FirstOrDefault.StartTracking

在relationEntity中添加新项的步骤 Dim newRel作为新关系实体 newRel.Ref\u parent\u Id=parentItem.Id newRel.REF\u rel\u ID=relItem.ID parentItem.relationshipEntity.AddnewRel-->在此处抛出错误

relationshipEntity表示父实体与另一实体多对多关系之间的关系表


谢谢

在设置孩子的家长时,是否尝试添加新的孩子

由于EF试图在双向关系上修复单向链接,我认为这可能会导致这样的问题

例如

而不是让EF做连接的另一端

parent.Add(new Child { Name = "abc" });


你能从你的代码中展示更多吗?你是如何获得parentObject和relationshipObject的?你能详细说明你在调试器中看到的步骤,直到抛出异常为止,以及调试前的状态。正如你所建议的,EF正在尝试删除关系并读取它。当它试图删除关系时,会抛出错误。但是,如果我删除并读取父实体,然后添加关系对象,则效果很好。一个简单的前后示例可能会帮助其他人避免此问题。你可以把它贴出来作为你问题的答案。
parent.Add(new Child { Name = "abc" });
new Child { Parent = parent, Name = "abc" });