public List <GameResult> Convert(SaveGameResultMessage source, List <GameResult> destination, ResolutionContext context)
 {
     return(source.gameWinPoints?.Select(x => new GameResult()
     {
         PlayerID = source.PlayerID,
         GameID = x.GameID,
         WinPoints = x.WinPoints,
         GameTimestamp = x.GameTimestamp.Ticks,
     })?.ToList() ?? new List <GameResult>());
 }
Ejemplo n.º 2
0
        public async Task <ServiceResult> Save(SaveGameResultMessage message)
        {
            var gameResults = Mapper.Map <List <GameResult> >(message);

            var errorMessages = new List <string>();
            var allValid      = true;

            gameResults.ForEach(x =>
            {
                var result = Validator.Validate(x);
                errorMessages.AddRange(result.Errors?.Select(e => e.ErrorMessage));
                allValid = allValid && result.IsValid;
            });

            if (!allValid)
            {
                return(new ServiceResult().Invalid().WithErrors(errorMessages));
            }

            var response = MemoryStorageService.StoreInMemory(gameResults);

            return(response);
        }
 public async Task <ServiceResult> Insert([FromServices] IGameResultService service, SaveGameResultMessage message)
 {
     return(await service.Save(message));
 }