public async Task <GetGameResult> Handle(GetGame request, CancellationToken cancellationToken) { var validationResult = await requestsValidator.Validate(request); if (!validationResult.IsSuccessful) { return(new GetGameResult(validationResult.Error)); } var game = await queryExecutor .QueryFirstOrDefault <GameData>(GetGameDataQuery, new { request.GameId, request.UserId }); var players = await queryExecutor .Query <PlayerData>(GetGamePlayersQuery, new { request.GameId, request.UserId }); return(new GetGameResult { Game = game, Players = players.ToList() }); }