我有一个关于检查DDD唯一性的问题.我知道在stackoverflow上已经有一些关于这个的问题,但它们并没有真正回答我的疑问
更新/插入数据库时,聚合根是否可以保存存储库的引用以检查唯一性?或者这是应用程序服务而不是域模型完成的任务?
假设我想在用户注册时检查用户模型的用户名是否唯一有几种我能想到的方法:
如果我使用依赖注入,我仍然想知道如何在方法1中将UserRepository注入User,或者在方法2中注入域服务,或者在方法3中注入应用程序服务,因为在任何情况下,对于用户/域服务/规范对象,我需要手动实例化对象,所以我似乎唯一的选择是在IoC中使用服务定位器来获取实例.但服务定位器是一种反模式,所以我想避免它
任何示例代码将不胜感激
domain-driven-design dependency-injection specifications unique repository