Ejemplo n.º 1
0
        public string DeleteCustomer(int customerId)
        {
            try
            {
                using (var context = new BAEntities())
                {
                    var customerToDelete = (from cust in context.Contacts.OfType <Customer>()
                                            .Include("Reservations")
                                            where cust.ContactID == customerId
                                            select cust).Single();

                    var reservationsToDelete = customerToDelete.Reservations.ToList();

                    foreach (Reservation r in reservationsToDelete)
                    {
                        context.DeleteObject(r);
                    }

                    context.DeleteObject(customerToDelete);
                    context.SaveChanges();
                    return("Success");
                }
            }
            catch (Exception ex)
            {
                string errorMessage = null;
                //TODO: construct a message to return to the client
                return(errorMessage);
            }
        }
Ejemplo n.º 2
0
        private static void DeleteReservations(BAEntities context, List <int> reservationsToDelete)
        {
            if (null != reservationsToDelete)
            {
                var query = from reservation in context.Reservations
                            join reservationId in reservationsToDelete
                            on reservation.ReservationID equals reservationId
                            where reservation.Payments.Count == 0
                            select reservation;


                foreach (var reservation in query)
                {
                    context.DeleteObject(reservation);
                }
            }
        }