public async Task HandleAsync(InvitationSentEvent message) { var invitation = new Invitation(); invitation.Transit(message); await this.domainRepository.SaveAsync <Guid, Invitation>(invitation); var network = new NetworkTableObject { InvitationId = invitation.Id.ToString(), OriginatorId = message.AggregateRootKey.ToString(), TargetId = message.TargetUserId.ToString(), OriginatorName = message.OriginatorName, TargetUserName = message.TargetUserName, InvitationStartDate = message.Timestamp, InvitationEndReason = InvitationEndReason.None }; await this.tableGateway.InsertAsync <NetworkTableObject>(new[] { network }); }
public void Transit(InvitationSentEvent message) { ApplyEvent(new InvitationSentTransitionEvent(this.Id, message.OriginatorId, message.TargetUserId, message.InvitationLetter)); }