コード例 #1
0
        public List <clsMateria> traerMaterias(string idCarrera)
        {
            var dato  = new clsCapaDeAcceso();
            var lista = new List <clsMateria>();

            try
            {
                //EN ESTA  CONSULTA SE TRAE TODAS LAS MATERIAS QUE CORRESPONDEN A LA CARRERA QUE SE ENVIA POR PARAMETRO Y QUE NO ESTAN SUSPENDIDAS

                dato.cargarComandoText("SELECT M.CodigoMateria,M.Descripcion AS MATERIA FROM MATERIAS M INNER JOIN CARRERAS C ON C.CodigoCarrera=M.CodigoCarrera WHERE C.CodigoCarrera=@idCarrera and c.Suspendido=0 ORDER BY M.Descripcion ASC");

                //CREAMOS UN DICCIONARIO DE PARAMETROS PARA EVITAR TENER QUE CONCATENAR VALORES EN EL QUERY
                var dic = new Dictionary <string, string>();
                //EL PRIMER VALOR ES EL NOMBRE DEL PARAMETRO (SIN EL @) Y EL SEGUNDO ES EL VALOR DE DICHO PARAMETRO
                dic.Add("idCarrera", idCarrera);

                dato.cargarComandoParametros(dic);
                dato.conectarse();
                dato.ejecutarQuery();

                while (dato.Lector.Read())
                {
                    var materia = new clsMateria();

                    materia.IdMateria = dato.Lector.GetString(0);
                    materia.Materia   = dato.Lector.GetString(1);

                    lista.Add(materia);
                }

                return(lista);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }