public Reserva findById(int id) { using (var ctx = new GestionReservasContext()) { Reserva reserva = ctx.Reservas.Find(id); if (reserva == null) { throw new KeyNotFoundException(); } //EAGER-LOADING OF REPSONSABLE INSTEAD OF LAZY-LOADING ctx.Entry(reserva).Reference(r => r.Responsable).Load(); ctx.Entry(reserva).Reference(r => r.Sala).Load(); return(reserva); } }
public Reserva update(Reserva reserva) { using (var ctx = new GestionReservasContext()) { var r = ctx.Reservas.Find(reserva.ReservaID); if (r != null) { ctx.Reservas.Attach(r); } else { throw new ApplicationException(); } ctx.Reservas.Attach(r); if (r.Encuesta != null) { ctx.Encuestas.Attach(r.Encuesta); } r.Encuesta = reserva.Encuesta; r.SalaID = reserva.SalaID; r.transferSimpleDataFrom(reserva); ctx.Entry(r).State = EntityState.Modified; ctx.SaveChanges(); return(reserva); } }
public Sala update(Sala sala) { using (var ctx = new GestionReservasContext()) { ctx.Salas.Attach(sala); ctx.Entry(sala).State = EntityState.Modified; ctx.SaveChanges(); return(sala); } }
public Sala findById(int id) { using (var ctx = new GestionReservasContext()) { Sala sala = ctx.Salas.Find(id); if (sala == null) { throw new KeyNotFoundException(); } ctx.Entry(sala).Reference(s => s.TipoSala).Load(); return(sala); } }