我正在考虑向 DDD 项目添加功能,但我不确定适合它的最佳方式。
所需的功能是标记和用户组操作。
因为很多东西都是可标记的(用户、期刊、文档等),所以在每个 AR 中重新创建该功能似乎是反 DRY 的。拥有一个维护中央标签表的标签存储库是否明智,然后为所需的不同标签类型(即将标签与 userId、journalId 等相关联)或什至可能是一个单一的多对多表是否明智?许多记录关系类型的表。如果是这样,是否必须修改域对象以保存指向标签的链接?
群组功能类似。需要允许用户创建用户组,然后将组分配给非公共(public)实体(期刊、文档等)以授予他们查看权限。
将此新功能添加到项目中的最佳方式是什么?
最佳答案
为标记和组功能设计单独的限界上下文。
关于c# - DDD 中的共享功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7890861/