域驱动设计 – 何时更新审计字段? DDD
我有一个会议对象:
会议{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). 我想知道其他人会怎么说(希望我能学到新东西!) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |