public bool CreateTicketPurchase(TicketPurchaseJSON ticketPurchase)
        {
            bool isSuccessful = false;

            try {
                TicketPurchase purchase = new TicketPurchase {
                    PaymentMethod    = ticketPurchase.PaymentMethod,
                    PaymentAmount    = ticketPurchase.PaymentAmount,
                    ConfirmationCode = ticketPurchase.ConfirmationCode
                };

                _context.TicketPurchase.Add(purchase);

                foreach (int eventSeatId in ticketPurchase.EventSeatsPurchased)
                {
                    EventSeat seat = _context.EventSeat
                                     .Where(es => es.EventSeatId == eventSeatId)
                                     .FirstOrDefault();

                    if (seat != null && seat.TicketPurchase == null)
                    {
                        seat.TicketPurchase = purchase;
                    }
                    else
                    {
                        _context.TicketPurchase.Remove(purchase);
                        _context.SaveChanges();
                        throw new System.ArgumentException("Seat ID Invalid");
                    }
                }

                _context.SaveChanges();
                isSuccessful = true;
            } catch (Exception e) {
            }


            return(isSuccessful);
        }
예제 #2
0
        public void Delete(int id)

        {
            Models.Task task = new Models.Task()
            {
                IDTask = id
            };
            using (var db = new TicketingContext())
            {
                db.Tasks.Attach(task);
                db.Tasks.Remove(task);
                db.SaveChanges();
            }
        }