什么是使用列表映射的正确方法(EF 核心 + AutoMapper.Collection)

问题描述 投票:0回答:0

引自https://github.com/AutoMapper/AutoMapper.Collection页面:

将 OrderDTO 映射回 Order 将根据 ID 是否匹配来比较订单项目列表

Mapper.Map(orderDtos, orders);如果身份证 匹配,然后 AutoMapper 将 OrderDTO 映射到 Order

如果 OrderDTO 存在而 Order 不存在,则 AutoMapper 将添加一个新的 从 OrderDTO 映射到集合的顺序

如果 Order 存在而 OrderDTO 不存在,则 AutoMapper 将删除 从集合中订购

我的代码:

List<TaskDetails> dbEntites = await dbContext.TaskDetails.ToListAsync();
List<TaskDetailsDto> dtoEntites = GetDtoEntites();
mapper.Map<List<TaskDetailsDto>, List<TaskDetails>>(dtoEntites, dbEntites);
// now dbEntites contains new entries and old but updated entries

接下来我应该做什么来插入新条目,更新当前条目并从数据库中删除不存在的条目?
如果我简单地调用 dbContext.SaveChanges 它什么都不做......

c# entity-framework .net-core entity-framework-core automapper
© www.soinside.com 2019 - 2024. All rights reserved.