public bool Save(BankAccount bankAccount) { var eventStreamId = GetEventStreamId(bankAccount.Id); var expectedVersion = bankAccount.StoredEventVersion == 0 ? Option.None <int>() : Option.Some(bankAccount.StoredEventVersion); var accountSaved = _appendOnlyStore.AppendToStream(eventStreamId, bankAccount.Changes, expectedVersion); return(accountSaved); }