我有一个产品和付款人的集合。 holdings.How支付的产品是通过在产品的枚举确定付款人可以支付以三种不同方式的产品,无论是手动,但设置百分比,由付款人收入或由相应的付款人的值。

在我的持久层我得到三个类,产品,付款人和ProductManuallyPaid这是一个多对许多产品和付款人之间类如果该产品是通过手动支付,指定百分比每个付款人将不得不支付。

应该怎么这个映射到视图?我想有一个新的多对许多类(将包括给付款人,商品和确切的量付款人要参考的基准的)?

我想计算应的服务层中进行,但应在服务层返回产品/付款人的一个ViewModel / DTO版本与新的多对许多类附加,或如果这在后面被处理?是否应该处理后,应在实体包含全新Many一对多类的名单,但在持久层被忽略?

有帮助吗?

解决方案

DDD可能会建议您应该采取思路是首先集中于对象模型的设计,而不是ER /数据模型。我看你有没有想过,数据模型应该是什么样子(与许多对多表等),但也许你应该考虑的对象模型会是什么样第一。然后作为对象模型反映了域(业务逻辑,业务行为),想想你怎么可能是对象模型映射到数据库中。

例如,它可能会更有意义要返回的具有支付的集合产品。每个付款有一个链接到付款人实体。根据你的设计,付款人链接可能有付款人信息的副本,你会想访问或者或许该链接知道如何与必要的信息/值加载完整付款人实体。 此外,每个付款人实例可能具有付款的集合(相同类型的类如上甚至?),其链接到所述产品。

此设计可以更好地利用OO校长和描述域比方面关系数据库可能更好。此外,这些物品可能会更容易在服务和UI层处理作为他们的母语对象结构已经为您提供了逻辑上与你需要的东西。即。一个产品具有付款,其具有所述付款人等。

我有理由新思维DDD自己。而之前术语DDD让你害怕了,看看埃文斯的这汇总版本本书。这是阅读和免费下载的一盏灯。这可能只是给你你一直在寻找的宝石。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top