예제 #1
0
        // INSERTS
        public static ResultadoOperacion insertarEstudiantes(IList <estudiantes> listaEstudiantes, grupos g)
        {
            ResultadoOperacion innerRO = null;
            CBTis123_Entities  db      = Vinculo_DB.generarContexto();
            int insertadas             = 0;

            try
            {
                // Primero vemos cuáles ya tiene el grupo...
                IList <grupos_estudiantes> listaActuales = db.grupos_estudiantes.Where(ge => ge.idGrupo == g.idGrupo).ToList();

                // Iteramos sobre los estudiantes que nos pasaron
                foreach (estudiantes e in listaEstudiantes)
                {
                    // Si no existe en el grupo, lo agregamos...
                    grupos_estudiantes ge = listaActuales.FirstOrDefault(ge1 => ge1.idEstudiante == e.idEstudiante);

                    if (ge == null)
                    {
                        grupos_estudiantes geNuevo = new grupos_estudiantes();

                        geNuevo.idEstudiante = e.idEstudiante;
                        geNuevo.idGrupo      = g.idGrupo;

                        db.grupos_estudiantes.Add(geNuevo);
                    }
                }

                // Guardamos cambios
                insertadas = db.SaveChanges();
            }
            catch (Exception e)
            {
                innerRO = ControladorExcepciones.crearResultadoOperacionException(e);
            }

            return
                (insertadas > 0 ?
                 new ResultadoOperacion(
                     EstadoOperacion.Correcto,
                     "Estudiantes del grupo modificados")
                :
                 new ResultadoOperacion(
                     EstadoOperacion.ErrorAplicacion,
                     "Estudiantes del grupo no modificados",
                     null,
                     innerRO));
        }
예제 #2
0
        //  UPDATES
        public static ResultadoOperacion actualizarGrupos_Estudiantes(IList <Estudiante> listaEstudiantes, Grupo g)
        {
            ResultadoOperacion innerRO = null;
            CBTis123_Entities  db      = Vinculo_DB.generarContexto();
            int actualizadas           = 0;

            try
            {
                List <grupos_estudiantes> listaPreliminar = db.grupos_estudiantes.Where(ge => ge.idGrupo == g.idGrupo).ToList();

                foreach (grupos_estudiantes ge in listaPreliminar)
                {
                    db.grupos_estudiantes.Remove(ge);
                }

                foreach (Estudiante e in listaEstudiantes)
                {
                    grupos_estudiantes ge = new grupos_estudiantes();
                    ge.idEstudiante = e.idEstudiante;
                    ge.idGrupo      = g.idGrupo;

                    db.grupos_estudiantes.Add(ge);
                }

                actualizadas = db.SaveChanges();
            }
            catch (Exception e)
            {
                innerRO = ControladorExcepciones.crearResultadoOperacionException(e);
            }

            return
                (actualizadas > 0 ?
                 new ResultadoOperacion(
                     EstadoOperacion.Correcto,
                     "Estudiantes del grupo modificados")
                :
                 new ResultadoOperacion(
                     EstadoOperacion.ErrorAplicacion,
                     "Estudiantes del grupo no modificados",
                     null,
                     innerRO));
        }