加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

域驱动设计 – 何时更新审计字段? DDD

发布时间:2020-12-14 05:02:57 所属栏目:百科 来源:网络整理
导读:我有一个会议对象: 会议{id,name,time,CreatedBy,UpdatedBy} 和a MeetingAssignee {id,MeetingID,EmployeeId,UpdatedBy) Meeting,作为Aggregate root,有一个方法AssignEmployee. 当我调用AssignEmployee时,我正要将当前用户传递给Meeting对象,以便它可以相
我有一个会议对象:

会议{id,name,time,CreatedBy,UpdatedBy}

和a

MeetingAssignee {id,MeetingID,EmployeeId,UpdatedBy)

Meeting,作为Aggregate root,有一个方法AssignEmployee.

当我调用AssignEmployee时,我正要将当前用户传递给Meeting对象,以便它可以相应地更新其审计字段.

但这似乎不对 – 是吗?显然,我可以公开审计字段并在以后更改它们 – 也许是在服务级别?

什么是每个人更新这些字段的首选方法?

请注意:我们没有使用Nhibernate,而是一个自定义的ORM,没有任何自动化的东西.

谢谢.

解决方法

审计和日志记录很有趣,因为它们通常在应用程序的任何地方都需要,并且它们都是要求(日志记录是OPs人员的要求).

在不了解您的模型的情况下,由于审计必须是一项要求,我会将当前用户传递给AssignEmployee,而不是在那里有一条说明AuditBlahBlahBlah的行,我会添加一个事件(也许是MeetingUpdated或AssigneeAdded …你会找到一个好名字)并将该事件分派给执行审计的类.通过这种方式,Meeting类没有关于审计和调度业务事件的线索,以用于审计目的(在我看来,这是非常DDDish).

我想知道其他人会怎么说(希望我能学到新东西!)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读