1

我将 MS SQL Server 与 C# 和实体框架一起使用。

数据层为处理保存、删除、获取等的每个表都有一个存储库。然后我有一个业务层来帮助用户与数据事务和错误处理等进行交互。

在数据库中的一列中,我需要在保存之前进行计算。我应该覆盖数据层中的添加/更新方法并进行此计算,还是应该将其放置在业务层中。

谢谢指教。

4

1 回答 1

3

在细粒度、良好扩展的应用程序设计中,根据 AKA SOA标准规范,任何实体都有自己的服务(业务)层和持久层对象。

当User-interface层调用一个服务时,该服务接收到一个简单或复合的DTO,该DTO可能映射到一个或多个独立的数据库实体,服务层允许调用其他实体服务,不允许调用其他实体持久层对象。

遵循方法:
如果实体中的属性计算A1A 基于实体的属性,A那么您可以在持久层上进行计算。
IfA1实体中属性的计算A 是基于其他实体属性的,那么您必须在服务层中进行计算。

于 2013-10-29T17:27:39.093 回答