public Mantenimiento CrearMantenimientoDeEquipo(Mantenimiento mantenimiento, int equipoId) { using (DbContextTransaction transaction = dbContext.Database.BeginTransaction()) { try { mantenimiento = Crear(mantenimiento); Equipo eqiupo = EquiposRepositorio.RecuperarPorId(equipoId); var mantenimientoEquipo = new Entidades.MantenimientosEquipo() { MantenimientoId = mantenimiento.MantenimientoId, Mantenimiento = mantenimiento, EquipoId = equipoId, Equipo = eqiupo }; eqiupo.EnMantenimiento = true; EquiposRepositorio.Actualizar(eqiupo); mantenimientoEquipo = ManteniminetosEquipoRepositorio.Crear(mantenimientoEquipo); transaction.Commit(); return(mantenimiento); }catch (Exception exc) { transaction.Rollback(); throw exc; } } }
public async Task <Mantenimiento> CrearMantenimientoDeEquipoAsync(Mantenimiento mantenimiento, Equipo equipo) { using (DbContextTransaction transaction = dbContext.Database.BeginTransaction()) { try { mantenimiento = await CrearAsync(mantenimiento); var mantenimientoEquipo = new Entidades.MantenimientosEquipo() { MantenimientoId = mantenimiento.MantenimientoId, Mantenimiento = mantenimiento, EquipoId = equipo.EquipoId, Equipo = equipo }; //Se pone el equipo en mantenimiento equipo.EnMantenimiento = true; await EquiposRepositorio.ActualizarAsync(equipo); mantenimientoEquipo = await ManteniminetosEquipoRepositorio.CrearAsync(mantenimientoEquipo); transaction.Commit(); return(mantenimiento); } catch (Exception e) { transaction.Rollback(); throw e; } } }