首页 新闻 会员 周边

是不是可以直接在领域实体的方法或者领域值对象的方法中进行持久化操作?

0
[待解决问题]

如何处理 在充血模型中实体的方法需要使用当前实体的仓储接口,是通过依赖注入在构造函数中为这个仓储接口赋值,还是在实体方法中进行传参?

或者也可以这样问 仓储接口是通过依赖注入进行传递 那它一般会出现哪里? 现在我们已知的有 领域服务、应用服务,而领域事件里面 应该直接调用领域服务、领域实体的方法不会出现仓储接口,那仓储接口会有可能出现在领域实体的方法中么?如果可能出现,那应该如何处理这个仓储接口 直接在方法中传参? 还是在构造函数中赋值依靠依赖注入从外部进行赋值?如果不会出现,那如何针对于领域实体本身CRUD的操作只能在应用服务中,因为领域服务是处理多对象的情况,这样一来应用服务中select出来 然后交给领域实体的方法update或者其他的 然后又在应用服务中进行Submit 感觉应用服务有点厚了,是不是可以直接在领域实体或者领域值对象中进行持久化操作?

DrinkingMoon的主页 DrinkingMoon | 菜鸟二级 | 园豆:204
提问于:2020-07-28 09:02

领域实体根据业务需求,可以有类似repository的CRUD操作,仅在内存中执行;真实的持久化操作,在domain service中执行。

Rickie 2年前
< >
分享
所有回答(1)
0

领域实体避免访问Repository接口,让app service和domain service访问repository 接口。

Rickie | 园豆:202 (菜鸟二级) | 2021-08-18 17:38
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册