【发布时间】:2019-12-13 20:49:16
【问题描述】:
我正在编写一些简单的扩展方法来从域中定义的实体创建 DTO,但是,这些实体具有也是实体的属性,我希望能够编写一些东西(我个人认为优雅)就像他们在 EF Core 中使用 Include().ThenInclude() 所做的那样。
理想情况下,我希望能够写出类似的东西
return myEntity.ToDto().Include(entity => entity.SubEntity).ThenInclude(subEntity => subEntity.AnotherSubEntity);
有可能吗?
我的想法是,如果我只调用ToDto(),我只会收到一个基本 DTO 对象,其中设置了所有简单类型属性,但所有复杂类型属性都是 null,除非我指定要包含一个(或更多)的属性。
【问题讨论】:
-
一种方便的方法是使用 AutoMapper (ProjectTo) 来满足这种需求。
-
你可以看看ORM模式,是关于加载相关数据here
标签: c# .net-core entity-framework-core