是否需要实体框架实体映射到数据传输对象

本文关键字:实体 数据传输 对象 映射 框架 是否 | 更新日期: 2023-09-27 18:34:22

这些天我正在阅读Domain Driven Desing。应用程序是 C# 编程。所以我对层之间的数据传输对象有点困惑。

  • 道曼层(包括域对象)
  • 服务层
  • 数据层(实体框架)
  • 网页用户界面

为什么需要为这些图层创建 DTO?哪一层包括DTO,每一层都有自己的DTO?

是否需要实体框架实体映射到数据传输对象

名思义,DTO 是仅传输数据的对象。它们不属于任何特定层,这是一种将数据从一个层或上下文传递到另一个层或上下文的方式。你使用的是 DTO,因此不会使用该上下文的对象,这些对象对特定于上下文的概念进行建模。这样,一层就不会耦合到另一层,它们的模型也不会公开(因为层/上下文模型在该上下文之外没有意义)。

这个问题很快就会结束(过于宽泛和主观),可能应该在程序员交流中提出。但是,我可以告诉你我们在做什么。我们所有的 DTO 对象都是在数据层创建的。往返的所有映射都位于该层。数据层上方的所有代码都使用 DTO 对象。在许多不同的替代方案和失败之后,这对我们来说效果最好。