예제 #1
0
        public async Task<IHttpActionResult> BulkInsertRouteSeats(RouteSeat[] seats)
        {
            OBTSResponse rep = new OBTSResponse();
            rep.Success = true;
            rep.Message = "";

            if (seats.Length > 0)
            {
                using (var context = new ApplicationDbContext())
                {
                    // delete existing records
                    context.Database.ExecuteSqlCommand("DELETE FROM RouteSeats WHERE RouteId = {0}", seats[0].RouteId);
                }
            }

            foreach (RouteSeat seat in seats)
            {
                seat.RouteSeatId = Guid.NewGuid();
                db.RouteSeats.Add(seat);
            }

            try
            {
                await db.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                rep.Fail = false;
                rep.Message = ex.Message;
            }

            return Ok(rep);
        }
예제 #2
0
        public async Task<IHttpActionResult> BulkUpdateRouteSeats(RouteSeat[] seats)
        {
            OBTSResponse rep = new OBTSResponse();
            rep.Success = true;
            rep.Message = "";

            foreach (RouteSeat seat in seats)
            {
                if (RouteExists(seat.RouteSeatId))
                {
                    db.Entry(seat).State = EntityState.Modified;
                }
                
            }

            try
            {
                await db.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                rep.Fail = false;
                rep.Message = ex.Message;
            }

            return Ok(rep);
        }