共享业务和数据访问实体的策略

Posted

技术标签:

【中文标题】共享业务和数据访问实体的策略【英文标题】:Strategy for Sharing Business and Data Access Entities 【发布时间】:2013-10-30 05:56:58 【问题描述】:

我正在设计一个分层应用程序,其中 90% 的业务和数据访问实体具有相同的属性。基本上,为了分离关注点,为每个层(和地图)创建一组具有相同属性的类是没有意义的。我完全了解自动映射器,但在这种情况下我宁愿不使用自动映射器,因为我认为这是不必要的。在这种场景下,业务和数据访问层之间是否可以共享共享业务实体?我们将通过在同一个命名空间中创建临时/转换类来管理剩余的 10% 的类。 还有其他设计方法吗?

【问题讨论】:

我决定使用洋葱架构,所以我的实体在核心或域层下,数据层自然会共享核心/域中的实体。 【参考方案1】:

我认为层之间的共享是拥有数据存储支持的模型类的全部意义所在。我会避免添加不必要的架构,除非代码真的需要它。如果您到了需要不知道数据存储或其他类似情况的地步,我希望您可以研究一下存储库模式。简单的代码 = 可维护的代码。

【讨论】:

以上是关于共享业务和数据访问实体的策略的主要内容,如果未能解决你的问题,请参考以下文章

实体框架与数据访问层

ASP.Net 分层应用程序 - 在层之间共享实体数据模型

MVC业务代表组合实体数据访问对象

当使用实体框架作为数据访问层时,如何实现业务逻辑层?

c# 中的解决方案架构,其中 winforms 和 asp.mvc 共享业务逻辑和数据访问 [关闭]

实体类和数据访问类三层开发