gpt4 book ai didi

c# - 在 DB 类型对象到业务类型对象之间实现转换器的最佳模式

转载 作者:太空宇宙 更新时间:2023-11-03 14:16:10 26 4
gpt4 key购买 nike

我们的项目已经实现了 Entity Framework ,并且我们在所有层中 float 了实体对象类型。由于这些对象的庞大规模,我们决定使用业务实体和数据实体。现在我很困惑1)在哪里实现这些对象的翻译2) 如何,即我应该遵循的任何模式或实践以获得更好的结果。

*已编辑 *感谢所有回复,我正在研究 Automapper,发现它可能很合适。但是我不想使用库,而是想创建自己的翻译器,这看起来像是在重新发明轮子。但我的想法是,到那时我将对事情有更多的控制权。

回到最初的问题

  1. 我应该在哪一层实现我的翻译,即我们有一个 N-tire 应用程序,有两种思想流派,一种是我们应该有一个业务层并将其视为外观,并在那里实现所有翻译和其他业务逻辑,以及将所有其他层视为不了解其他层的哑层并保持对它们的最少引用,因此数据层将丢弃相同的数据实体,并且可以在业务对象与我们的业务对象有些不同的另一个项目中重用当前对象。第二种想法是数据层应该返回并接受业务实体,这将限制非数据库开发人员不必要地调用数据库层来创建业务实体。
  2. 任何适用于此类翻译库的模式。

最佳答案

这听起来与许多人在将 MVVM 模式与 ORM 结合使用时所面临的问题类似。 Automapper (http://automapper.codeplex.com/)是一个很棒的库,可以在类型之间提供干净的、基于约定的转换。

关于c# - 在 DB 类型对象到业务类型对象之间实现转换器的最佳模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6535965/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com