/// <summary>
        /// Резервирование игрового ключа
        /// </summary>
        public async Task <KeyDto> ReserveKey(PaymentGameRequest paymentGameRequest)
        {
            var keyDto = await GetKey(paymentGameRequest.Id);

            if (keyDto == null)
            {
                throw new ArgumentException(@$ "Игровые ключи для игры " "{paymentGameRequest.Name}" " закончились");
            }

            keyDto.Reserved = true;
            dbContext.Keys.Update(keyDto);
            await dbContext.SaveChangesAsync();

            return(keyDto);
        }
 public PaymentInfo(double amount, string email, PaymentGameRequest game)
 {
     Amount = amount;
     Email  = email;
     Game   = game;
 }