// Notes: When we reconstruct aggregate from events, we don't want to set the applyEvent flag to false, // Its significant only when we want to persist and increment the version of aggregate // to achieve consistency! public void Handle(ValueCreatedEvent @event) { CheckEvent(@event); var model = new ValuesRootAggregateDataModel { TenantId = @event.TenantId, Name = @event.Name, Code = @event.Code, Value = @event.Value, }; this.CreateValue(model, applyEvent: false); }
private void Handle(ValueCreatedEvent valueCreatedEvent, string rawJson, EventModel @event, EventMetaData metaData) { _logger.LogInformation($"Handling {nameof(ValueCreatedEvent)} .... {Environment.NewLine} {rawJson}"); _operation = DatabaseOperation.Create; _currentValueRecord = new ValueRecord { PublicId = valueCreatedEvent.Id, Code = valueCreatedEvent.Code, Name = valueCreatedEvent.Name, TenantId = valueCreatedEvent.TenantId, Value = valueCreatedEvent.Value, Version = @event.Version, CommitId = metaData.CommitIdHeader, CreatedOn = DateTime.Now, LastModifiedOn = DateTime.Now, Comments = new List <ValueCommentRecord>() }; }