entity-framework - Entity Framework Core 仅保存子子列表中的一个(最后一个)

标签 entity-framework .net-core

好吧,这是无家可归者慈善机构的免费系统,因此任何可以提供帮助的人都可以获得额外的奖励积分!

我观看了 Julie Lermans E.F Core 的整个类(class),试图找出其中的问题,它完全让我大吃一惊,所以我希望有人能发现一些东西!!

我有一个一对多的关系,我有一个 NightshelterRegister,并且该寄存器将有许多 NightshelterRegisterAttendances。我的 2 个类如下,如您所见,每一侧都有导航属性。

enter image description here

我的存储库函数保存相当简单: enter image description here

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

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

我对此完全不知所措。数据库已正确获取出勤表到父表的fk: enter image description here

这有点粗糙,但您已经了解了映射器函数的想法: enter image description here

最后是我的背景: enter image description here

我现在已经在这上面浪费了 3 天,这严重阻碍了慈善机构获得新系统,因此我们将不胜感激!

最佳答案

您能否单步执行 MapNightshelterRegisterAttendance 并查看是否添加了 3 条记录或添加了 3 次相同的记录。

如果是后者,那么我认为相同的记录 ID 将用于三个“保存”,因此看起来只保存了最后一条记录...(?)

关于entity-framework - Entity Framework Core 仅保存子子列表中的一个(最后一个),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45149755/

相关文章:

c# - 使用 Entity Framework 和 Linq 进行动态排序

c# - 使用枚举和 Entity Framework 脚手架从模型创建下拉列表?

c# - 如何从异常(随机出现的 C# WPF)中获取更多信息?

c# - EF CORE - Fluent API - 级联删除限制在表上

c# - LINQ OrderBy 在 Visual Studio 立即窗口中的行为与在代码中的行为不同

c# - 查询需要在 .ThenInclude 之后过滤,使用 .Where 子句

c# - ToList 和 Find 实现

c# - LINQ 查询输出 JSON 中的组和子组

c# - 测试 Alexa 技能返回 "Error converting the Lambda event JSON payload to a string"

asp.net-core - .Net Core Nuget 包 - 将文件复制到包使用者 wwwroot