コード例 #1
0
        public async Task <int> PurchaseTransportCard(int load)
        {
            if (load < _initialLoadAmount || load > _maxLoadAmount)
            {
                throw new Exception($"Initial load must be {_initialLoadAmount} or higher but less than {_maxLoadAmount}");
            }

            var transportCard = new TransportCard
            {
                Load = load
            };

            _context.Add(transportCard);

            if (await _context.SaveChangesAsync() <= 0)
            {
                throw new Exception("Purchasing card failed");
            }

            return(transportCard.Id);
        }