public static List<Reservation> GetUnfinishedReservation(string pUserFrom) { List<Reservation> reservatioList = new List<Reservation>(); DataContextDataContext dc = new DataContextDataContext(); ISingleResult<select_unfinished_reservation_by_userResult> rs = dc.select_unfinished_reservation_by_user(pUserFrom); foreach (select_unfinished_reservation_by_userResult r in rs) { List<DishQuota> dishQuotaList = new List<DishQuota>(); ISingleResult<get_dishquota_by_reservationResult> rs2 = dc.get_dishquota_by_reservation(r.id); foreach (get_dishquota_by_reservationResult r2 in rs2) { double price = 0; ISingleResult<get_dish_by_nameResult> rs3 = dc.get_dish_by_name(r2.dish_name); foreach (get_dish_by_nameResult r3 in rs3) { price = (double)r3.price; } DishQuota dishQuota = new DishQuota(r2.id, r2.dish_name, price, (int)r2.quato, r2.note); dishQuotaList.Add(dishQuota); } Reservation reservation = new Reservation( r.id, r.user_from, r.customer_name, r.phone, (DateTime)r.arrive_time, r.table_name, (int)r.seat, (ReservationType)r.type, (ReservationState)r.state, dishQuotaList); reservatioList.Add(reservation); } return reservatioList; }