我将 MS SQL Server 与 C# 和实体框架一起使用。
数据层为处理保存、删除、获取等的每个表都有一个存储库。然后我有一个业务层来帮助用户与数据事务和错误处理等进行交互。
在数据库中的一列中,我需要在保存之前进行计算。我应该覆盖数据层中的添加/更新方法并进行此计算,还是应该将其放置在业务层中。
谢谢指教。
我将 MS SQL Server 与 C# 和实体框架一起使用。
数据层为处理保存、删除、获取等的每个表都有一个存储库。然后我有一个业务层来帮助用户与数据事务和错误处理等进行交互。
在数据库中的一列中,我需要在保存之前进行计算。我应该覆盖数据层中的添加/更新方法并进行此计算,还是应该将其放置在业务层中。
谢谢指教。
在细粒度、良好扩展的应用程序设计中,根据 AKA SOA标准规范,任何实体都有自己的服务(业务)层和持久层对象。
当User-interface层调用一个服务时,该服务接收到一个简单或复合的DTO,该DTO可能映射到一个或多个独立的数据库实体,服务层允许调用其他实体服务,不允许调用其他实体持久层对象。
遵循方法:
如果实体中的属性计算A1
是A
基于实体的属性,A
那么您可以在持久层上进行计算。
IfA1
实体中属性的计算A
是基于其他实体属性的,那么您必须在服务层中进行计算。