protected async Task Consume(string sessionId, string userId, Action <SessionAggregate> callback) { var session = await _sessionCommandRepository.Get(sessionId, CancellationToken.None); if (session == null) { session = SessionAggregate.Create(sessionId, userId); callback(session); await _sessionCommandRepository.Add(session, CancellationToken.None); } else { callback(session); await _sessionCommandRepository.Update(session, CancellationToken.None); } await _sessionCommandRepository.SaveChanges(CancellationToken.None); }
public Task Update(SessionAggregate session, CancellationToken cancellationToken) { _dbContext.Sessions.Update(session); return(Task.CompletedTask); }