我刚开始研究使用Entity Framework的项目。 Prevoiusly,应用程序通过EF实体,并且它们已完全填充,因此每个代码段都能够访问属性中的属性...
我刚刚创建了域实体,我想将EF实体映射到这些域实体。它基本上是1-1映射。应该怎么做?有一个T4模板将EF实体映射到POCO,但它只映射一层深度。如果我想访问Person,那该怎么办?汽车 - >发动机?我应该如何从EF结构转到POCO结构并让映射在整个层次结构中一直工作?
答案 0 :(得分:1)
您应该使用AutoMapper或ValueInjector之类的东西。如果您的课程遵循某些惯例,那么它的效果非常好。如果他们不这样做,您可以定义自定义映射类来为您完成。
答案 1 :(得分:1)
在我看来,您不需要创建另一组域实体。 POCO实体旨在用于所有层(恕我直言)。
但是如果你想将另一组实体映射到POCO实体,只需使用Automapper。 它能够映射对象及其属性。
另一方面,使用POCO可以访问Person - >汽车 - >发动机链。只需正确制作“包含”,就没有问题。