3

我有几个类继承自一个Admin类:Manager,Translator等。

Admin是一个聚合,所以应该有它自己的Repository。但是,某些查找 Managers 或 Translators 的方法可能特定于这些类。其他可能对所有管理员都是通用的。

这里的最佳做法是什么?我是不是该:

  • 将所有查找管理员的方法放在一个存储库中?
  • 或者使用存储库的层次结构来模仿域模型类的层次结构,然后有一个ManagerRepository和一个TranslatorRepository扩展一个AdminRepository
4

2 回答 2

3

正如我所看到的 - 这并不重要。

我会坚持使用一个AdminRepository,除非它膨胀并乞求分解。

于 2011-06-27T13:41:05.620 回答
0

严格来说,只有聚合根需要自己的存储库。

如果您需要在不访问另一个聚合根的情况下管理特定实体,则可以将该实体视为(但不一定)聚合根本身。

所以我想说:选择你的业务/领域观点,然后得出你的技术结论。

于 2011-06-29T12:14:02.260 回答