我在父子关系中有几个实体:家庭(父)和更新(子)。我想阅读没有相应更新的家庭列表。只有 17 个家庭,但大约有 60,000 个更新,所以我真的不想要更新。
我使用EntitiesToDTO从 Family 实体生成 DTO,并创建了一个用于将 Family 实体转换为 FamilyDTO 的汇编程序。汇编器的 ToDTO 方法如下所示:
public static FamilyDTO ToDTO(this Family entity)
{
if (entity == null) return null;
var dto = new FamilyDTO();
dto.FamilyCode = entity.FamilyCode;
dto.FamilyName = entity.FamilyName;
dto.CreateDatetime = entity.CreateDatetime;
dto.Updates_ID = entity.Updates.Select(p => p.ID).ToList();
entity.OnDTO(dto);
return dto;
}
当我运行汇编程序时,我发现每个生成的 FamilyDTO 都填充了 Updates_ID 列表,尽管 EF 模型(edmx 文件)的延迟加载设置为 true。是否可以将 EntitiesToDTO 配置为支持子元素的延迟加载,还是总是使用急切加载?我在 EntitiesToDTOs 中看不到任何可以设置为在生成汇编程序时支持延迟加载的选项。
顺便说一句,我是一个更大的团队的一员,该团队几乎每天都使用EntitiesToDTO来重新生成汇编器,所以如果可能的话,我宁愿不要手动修改汇编器。