DDD 聚合根和实体
DDD aggregate roots and entities
我有一个 Invoice
对象,它有一个 InvoiceType
。现在看这种情况,InvoiceType
可以不开票存在。我应该将 Invoice
视为一个聚合根,将 InvoiceType
视为其聚合中的另一个聚合根,并通过 ID 引用将它们连接起来,还是 InvoiceType 应该只是 Invoice 聚合中的一个实体?
此外,在创建发票时,用户必须能够从下拉列表中选择发票类型,这表明它应该有自己的存储库。
我将 InvoiceType
视为单独的集合是否正确?
Am I right to treat InvoiceType
as separate aggregate?
如果 InvoiceType
是一个实体,并且如果两个不同的 Invoices
可以有 "the same" 发票类型,那么可以 - 您需要将 InvoiceType
视为一个单独的聚合, 有自己的存储库,并通过 ID 引用连接它们。
我有一个 Invoice
对象,它有一个 InvoiceType
。现在看这种情况,InvoiceType
可以不开票存在。我应该将 Invoice
视为一个聚合根,将 InvoiceType
视为其聚合中的另一个聚合根,并通过 ID 引用将它们连接起来,还是 InvoiceType 应该只是 Invoice 聚合中的一个实体?
此外,在创建发票时,用户必须能够从下拉列表中选择发票类型,这表明它应该有自己的存储库。
我将 InvoiceType
视为单独的集合是否正确?
Am I right to treat
InvoiceType
as separate aggregate?
如果 InvoiceType
是一个实体,并且如果两个不同的 Invoices
可以有 "the same" 发票类型,那么可以 - 您需要将 InvoiceType
视为一个单独的聚合, 有自己的存储库,并通过 ID 引用连接它们。