Example #1
0
        private async Task ProjectAsync(SessionId id)
        {
            var session = await _sessionRepository.GetAsync(id);

            if (session != null)
            {
                var speakers = await Task.WhenAll(session.Speakers.Select(async s => (await _personProjectionStore.GetNameAsync(s)) !));

                var projection = new SessionProjection(session.Id, session.Title, session.Description, session.Schedule, session.Status, session.Tags, speakers);
                await _sessionProjectionStore.MergeProjectionAsync(projection);
            }
        }