Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Entity framework GraphDiff:在对象层次结构中重新排列子对象并保存更新的详细信息_Entity Framework_Graphdiff - Fatal编程技术网

Entity framework GraphDiff:在对象层次结构中重新排列子对象并保存更新的详细信息

Entity framework GraphDiff:在对象层次结构中重新排列子对象并保存更新的详细信息,entity-framework,graphdiff,Entity Framework,Graphdiff,我使用GraphDiff保存表示以下数据模型的分离对象层次结构 项目->课程->模块->主题 问题是,当我尝试从 Project |_ Course A | |_Module A | |_Topic A | |_Course B |_Module B |_Topic B 到 我已

我使用GraphDiff保存表示以下数据模型的分离对象层次结构

项目->课程->模块->主题

问题是,当我尝试从

            Project 
            |_ Course A
            |  |_Module A
            |    |_Topic A
            |
            |_Course B
               |_Module B
                 |_Topic B

我已将模块B的课程id更新为课程A id,并使用graphdiff将对象层次结构保存到数据库中,这导致数据丢失(例如,主题B在保存后从数据库中删除)。这就是我使用graphdiff保存项目对象的方式

context.UpdateGraph(project, map => map.OwnedCollection(c => c.Courses,
                     with => with.OwnedCollection(m => m.Modules,
                       with1 => with1.OwnedCollection(t =>t.Topics))));
我想要的是在不丢失信息的情况下重新排列对象层次结构中的子对象(对象树可以包含课程、模块和主题细节的更改)。此外,有人可以提供关于draphdiff的好教程,并提供不同的示例,因为我是新来的:)

多谢各位

context.UpdateGraph(project, map => map.OwnedCollection(c => c.Courses,
                     with => with.OwnedCollection(m => m.Modules,
                       with1 => with1.OwnedCollection(t =>t.Topics))));