public ActionResult FinalizarEstadoFuerza(int id_estado_fuerza) { Estado_Fuerza estadofuerza = db.Estado_Fuerza.SingleOrDefault(e => e.id_estado_fuerza == id_estado_fuerza && e.activo && !e.eliminado); if (estadofuerza == null) { return(HttpNotFound()); } estadofuerza.activo = false; estadofuerza.fecha_finalizacion = estadofuerza.fecha_modificacion = DateTime.Now; estadofuerza.id_usuario_finalizacion = estadofuerza.id_usuario_modificacion = Cache.DiccionarioUsuariosLogueados[User.Identity.Name].usuario.id_usuario; //using (DbContextTransaction tran = db.Database.BeginTransaction()) { try { db.Entry(estadofuerza).State = EntityState.Modified; db.SaveChanges(); db.Finalizar_Dia(estadofuerza.id_estado_fuerza); //tran.Commit(); return(RedirectToAction("EstadoFuerza")); } catch { //tran.Rollback(); ContextMessage msg = new ContextMessage(ContextMessage.Error, "Error durante la conexión con el servidor. Cambios no efectuados."); msg.ReturnUrl = Url.Action("EstadoFuerza"); TempData[User.Identity.Name] = msg; return(RedirectToAction("Mensaje")); } } }