实体框架核心仅保存子子列表中的一个(最后一个)

时间:2017-07-17 16:57:03

标签: entity-framework .net-core

好的这是一个无家可归慈善机构的免费系统,所以任何可以提供帮助的人都可以获得额外的布朗尼积分!

我已经看过Julie Lermans E.F Core的整个课程,试图找到这个问题,它完全让我大吃一惊,所以希望有人能发现一些东西!!

我有一对多的关系,我有一个NightshelterRegister,那个寄存器会有很多NightshelterRegisterAttendances。我的2个课程在下面,你可以看到每一侧都有导航属性。

enter image description here

我保存的repo功能非常简单: enter image description here

正如您在点击SaveChanges()时所看到的,子列表中有3个对象: enter image description here

但是,3个子记录中只有1个(列表中的最后一个)与父记录一起保存到数据库中: enter image description here

我完全失去了这个。数据库正确地将fk从考勤表到父表: enter image description here

它有点粗糙,但你明白了mapper函数: enter image description here

最后我的背景: enter image description here

我现在已经浪费了3天的时间,并且认真对待慈善机构获得他们的新系统,所以任何帮助都会非常感激!

1 个答案:

答案 0 :(得分:4)

您是否可以单步执行MapNightshelterRegisterAttendance,看看它是否添加了3个记录或添加了3次相同的记录。

如果是后者,那么我认为相同的记录ID将用于三个" save"所以它看起来只会保存最后一条记录......(?)