public void Handle(RoleCreated evt) { _unitOfWork.WithAuthUserTransaction(tran => { var authUser = _authUserRepository.FindById(evt.CreatedBy); var adminLog = AdminLog.CreateRoleLog(_idGenerator.ReservePool(), _clock, authUser, evt.RoleId, evt.Rolename); _adminLogRepository.Save(adminLog); tran.Commit(); }); }